#include<stdio.h> void main() { printf("the size of i is %d \n",sizeof(int)); printf("the size of p is %zu \n",sizeof(int*)); }
上面这段程序把 %zu 换成 %d结果不变,到底他们有什么区别,我用gcc编译的。
%zu用来输出size_t 类型
百度到的 size_t是标准C库中定义的,应为unsigned int
你试下输出一个负值.看会不会不一样
多谢