首页 > 电脑

字符指针变量能不能赋值给整型?

更新时间2019-04-14 19:59:21

有的编译器会有警告,有的会报错。但强制转换后是可以的,指针变量本身就是内存的地址。

int n =99;int *p1 = &n;int m = (int)p1;int *p2 = (int*)m;

字符指针变量能不能赋值给整型?

这个是传值操作,因此无法实现形参向实参的传递

无论什么类型的指针变量都是占四个字节的,其值是一个占四个字节的数据,因此使用四个字节的变量就可以对其值进行存储,但是在C++中一般会采用long通过强制转换的方式来存储指针的值。将指针值赋值给整型变量可能由于编译器的不同而存在风险。

 

系统内存使用是操作系统规定的,如果你希望直接操作内存,就必须了解系统的内存的分配况,否则造成的损失可能是致命的。你的举例是不完整的,如果说*point_1=100是非法的,完整语句应该是int *point_1=100,之所以非法是因为100不是用户可以操控的内存区域。*p = 1之所以数合法的,是因为将p所指的内存赋予整数1,例如Int a;int *p = &a;*p = 1; // 等价于赋值语句a = 1,

上一篇:videoleap如何做定格?

下一篇:c语言编写程序,求分段函数y的值,x的值由键盘随便输入