字符串的赋值,本质上并不是对变量赋值了整个字符串,而是将字符串的首地址给了变量,因此呢要想对字符串赋值有3种方法,
方法一:首先要有一个指向字符的指针用来存放这个字符串的首地址。
例如 char *p;下面就可以对p进行赋值了,p="bbbbbbbb";
方法二:使用字符数组,char a[10];这种方法和上面的类似,不过有一点注意,数组名虽然代表的也是个地址,但是是个常量地址,也就是说它的值是不可被改变的,如果想用赋值语句对他进行赋值,必须在定义的时候就赋值,不能单独用一条赋值语句赋值,例如 char a[10];a="bbbbb";是错误的,char a[10]="bbbbbb";是正确的,而上面的方法中指针变量是可以这样做的。
方法三:使用宏定义,就像你说的#define P "dddddd"