定义指针时,编译器并不为指针所指向的对象分配空间,它只是分配指针本身的空间,除非在定义的同时赋给指针一个字符串常量进行初始化。
char* p = “making bread”;//为其分配内存
注意:只有对字符串常量才是如此。不能指望为浮点数之类的常量分配空间,如:
float* pip = 3.141;//错误!编译无法通过!
在ANSCI 中,初始话指针时所创建的字符串常量被定为只读。如果试图通过指针修改这个字符串的值,程序就会出现未定义的错误。
数组也可以用字符串常量进行初始化:
char a[] = “goodberry”;
指针
最新推荐文章于 2024-08-13 23:25:23 发布