main()
{
int *p=NULL;
printf("%d",sizeof(p));
}
本人自学c语言,小白一个
想知道空指针变量p的长度,可自己编的的乱糟糟的代码编译不了,求大神告诉我正确的代码是怎么编的
这里先谢谢了
main() { int *p=NULL; printf("%d",sizeof(
答案:4 悬赏:0
解决时间 2021-03-05 07:53
- 提问者网友:騷女、無惡不作
- 2021-03-04 22:42
最佳答案
- 二级知识专家网友:嗷呜我不好爱
- 2021-03-04 22:52
好问题啊!
其实可以sizeof(NULL),但这个结果,和具体的编译平台有关系。
NULL其实是 (void*(0))
在我这输出是4.
其实可以sizeof(NULL),但这个结果,和具体的编译平台有关系。
NULL其实是 (void*(0))
在我这输出是4.
全部回答
- 1楼网友:狠傷凤凰
- 2021-03-05 01:16
声明为指针p, 声明里 *p 是指针。
语句与声明不同,
scanf("%d",p); 中 参数p 必须是 地址,这是库函数 scanf 定义时 规定的。
语句与声明不同,语句里 *p 这种形式 是指针指向的值,p才是地址。
printf("%p\n",p); 打印地址。
printf("%p\n", *p); 打印值
- 2楼网友:颜值超标
- 2021-03-05 00:09
是4因为p是指针 指针都是4 编译不过可能是没有加头文件
- 3楼网友:花一样艳美的陌生人
- 2021-03-04 23:35
#include
int main ()
{
int *p = NULL ;
printf ("%d \n ",sizeof (int ))
}
试下 操作系统如果是32位的,结果是4个字节(感觉)
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯