在这个问题,有人建议意见,我应该不会投的结果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)
为什么会这样呢?
我应该使用哪种格式说明符来打印变量的地址?下面很多我很困惑.
%u - 无符号整数
%x - 十六进制值
%p - 无效指针
哪个是打印地址的最佳格式?
什么是字符串格式intptr_t, uintptr_t 哪个对32位和64位架构都有效.
编辑
warning: format ‘%x’ expects type ‘unsigned int’, but argument 2 has type "AAA"
Run Code Online (Sandbox Code Playgroud)
这是我在64位但不是32位的警告.
intptr_t AAA
Run Code Online (Sandbox Code Playgroud)