指针变量的赋值问题
请教大家一个问题,在谭浩强《C语言》第四版关于指针的讲解中(书中第224页)关于指针变量的赋值,在小字部分指出,形如* pointer_1=100是不合法的,不能将整常数赋给指针变量,但是在同页下文中又提到,赋值语句* p=1是可以的,表示将整数1赋给p当前所指向的变量,那么这不是矛盾了吗?还是说,后一种情况下,必须先指定指针变量p所指向的变量,如先定义p=&a,然后才能进行* p=1这样的赋值呢?请大家指点,谢谢!
指针是一种变量,存储方式为4字节大小,存储的是它指向的空间的首地址。
定义一个指针,没给他空间就让他存储数据是非法的。
也可以用该指针指向已有空间,再给其指向赋值,这就合法了