C语言中能不能将一个整数赋给一个指针变量?

如题所述

在某种场合,把常量赋给指针变量是可以的,例如:
int
a=10,
*p
;
printf("%d",&a);
在以上代码输出a的地址值之后,譬如:1244996
以上程序可以改为:
int
a=10,*p;
p=1244996;
printf("%d",*p);
输出10
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-10-14
系统内存使用是操作系统规定的,如果你希望直接操作内存,就必须了解系统的内存的分配情况,否则造成的损失可能是致命的。你的举例是不完整的,如果说*point_1=100是非法的,完整语句应该是int
*point_1=100,之所以非法是因为100不是用户可以操控的内存区域。*p
=
1之所以数合法的,是因为将p所指的内存赋予整数1,例如Int
a;int
*p
=
&a;*p
=
1;
//
等价于赋值语句a
=
1,
相似回答