[原始标题提到“sizeof 函数”。]
我尝试了这些,它们都有效:
char *p; printf("Size of *p is %d\n",sizeof(*p)); //result =1 printf("Size of p is %d\n",sizeof( p)); //result =4 printf("Size of p is %d\n",sizeof(&p)); //result =4
我想知道为什么第一个printf是1,第二个和第三个是4? 那么 sizeof 实际上可以采用哪些参数?
最佳答案
sizeof
不是一个函数,它是一个关键字。你可以去掉括号,它会工作得很好。因为它不是函数,所以它适用于您提供给它的任何类型或对象 - 它比函数灵活得多。
关于c - sizeof 运算符在 C 中接受哪些参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1557362/