相关疑难解决方法(0)

我是否施放了malloc的结果?

这个问题,有人建议意见,我应该不会投的结果malloc,即

int *sieve = malloc(sizeof(int) * length);
Run Code Online (Sandbox Code Playgroud)

而不是:

int *sieve = (int *) malloc(sizeof(int) * length);
Run Code Online (Sandbox Code Playgroud)

为什么会这样呢?

c malloc casting

2318
推荐指数
27
解决办法
22万
查看次数

指向无效内存时,sizeof(*ptr)是否未定义行为?

我们都知道解除引用空指针或指向未分配内存的指针会调用未定义的行为.

但是在传递给表达式时使用的规则是什么sizeof

例如:

int *ptr = 0;
int size = sizeof(*ptr);
Run Code Online (Sandbox Code Playgroud)

这也未定义吗?

c c++ language-lawyer

36
推荐指数
4
解决办法
1560
查看次数

标签 统计

c ×2

c++ ×1

casting ×1

language-lawyer ×1

malloc ×1