int * p=77;等号右边不是应该是地址的嘛?
怎么理解指针函数和函数指针?
int * func()和int (*func)()从字面上来看怎么理解?
简单来说:前者是一个带回指针的函数,返回值是指向整型数据的指针
后者是一个指向函数的指针,函数返回值是一个整型数据
的确在编译时不会出现错误,但这句的意思是把77给P,你不知道77是什么东西的指针,所以这么做什么意义也没有
问题就在这里!
如果地址为77的空间正是我想要指针p所定位的,那么就不错了!给指针变量赋值77有何不可?
这里的 77 是个地址!
int *p=77; 不是将指针指向数值77,而是指针指向地址值为 77 存储单元。
如果再执行
*P=77;那么,就是对地址值为 77 存储单元赋值 77.