关于用数组定义字符串的一个问题!求助!
请问下以下两端代码区别在哪里?一、char str="I love Fishc.com!";
二、char str;
str="Ilove Fishc.com!";
str="Ilove Fishc.com!";
這是錯的, str 是一個字元, 跟str, str ....str 一樣都是一個字元, 你不可以這樣賦值
你也不可以用 str = "Ilove Fishc.com!"; 因為 str 是一個address
char str="I love Fishc.com!";
这里的=是初始化,因为str之前没有定义过,定义的时候使用=就是初始化
char str;
str="Ilove Fishc.com!";
这里的=不是初始化,因为str之前定义过,非定义的时候使用=就是赋值
C语言规定可以用字符串常量初始化字符串数组,但不能对字符串数组直接赋值。请注意这句话里,"初始化"是可以的,“赋值”是不行的
数组是常量,所以只能初始化,不能赋值 所以第二个会报错 明白了!谢谢!
C语言规定可以用字符串常量初始化字符串数组,但不能对字符串数组直接赋值。请注意这句话里,"初始化"是可以的,“赋值”是不行的
页:
[1]