我只回答一下你提出的问题吧.其他不懂的你可以再跟我联系.
char c; 声明字符变量c,系统为c分配一个字符的空间
c="abcd"; //这是是错误的. abcd要占4的字符的空间,c中放不下.
声明字符串常量也能用"char".要用到数组.(如果你没学到数组,等你学了以后就明白了)例:
char string[4];
string="abcd";
string中存放的就是字符串"abcd"了.
打印字符型的时候,printf("%c/n,"c1),如果是打印字符串型,只需把%c改为%s即可.例:
printf("%s",string); //打印字符串string(abcd)
字符型是单个字符
字符串是由字符型的单个字符所组成的集合。
字符串在c语言中表示为字符型数组哈。c语言中并没用字符串这种数据类型。
你用的编译器是c++的,所以就有了字符串这样的类型哈。
字符型在c中规定死了是一个字节。
而字符串是多个字节的。
单引号表示字符,双引号表示字符串。
char是字符型的,占一个字节内存,每个字母占一个内存。所以c='a'是对的
而c="abcd"占4个字节内存所以肯定是不对的。ar
______
c中的字符串要用数组或指针定义,比如:char a[5]="abcde";
或char *a;*a="abcde";
第二个错是因为用了双引号,字符型是用单引号的. 字符串是是用双引号的.
而最后一个错是,abcd明显是一串字符串,所以不能用char c;来说明,如果要说明,可以使用数组形式定义:a[4]="abcd"