如题所述
第1个回答 推荐于2017-09-27
C语言中用字符型CHAR来表示存储字符,没有C++里面的可以单独的字符串类型String
所以C里面使用字符数组和字符指针来实现字符串功能
C的字符数组只能在定义时一起赋值,以后只能给单个元素一一赋值;
前面那位朋友说的
char s="asf32gs";是不行的,你可以上机试一下,char s是定义一个单个字符变量,不能把字符串的值赋给它,可以改为定义一个字符指针指向字符串char *s="safdfsdf";改为数组也可char s[]="dsfdsfsdf",数组大小可以不写,如果你直接赋值的话,编译器会根据字符串长度分配对应的空间,若给了大小,也可以赋值,这时要自己注意字符串长度不要比长度-1还大追问
所以C里面使用字符数组和字符指针来实现字符串功能
C的字符数组只能在定义时一起赋值,以后只能给单个元素一一赋值;
前面那位朋友说的
char s="asf32gs";是不行的,你可以上机试一下,char s是定义一个单个字符变量,不能把字符串的值赋给它,可以改为定义一个字符指针指向字符串char *s="safdfsdf";改为数组也可char s[]="dsfdsfsdf",数组大小可以不写,如果你直接赋值的话,编译器会根据字符串长度分配对应的空间,若给了大小,也可以赋值,这时要自己注意字符串长度不要比长度-1还大追问
“C的字符数组只能在定义时一起赋值,以后只能给单个元素一一赋值;”中“字符数组”应该是“字符串”吧
本回答被提问者采纳第2个回答 2012-07-23
一、简单的定义方法可以直接定义,比如:char s="asf32gs"
二、也可以存放在数组中 char s1="f3asf"追问
二、也可以存放在数组中 char s1="f3asf"追问
字符串的定义和初始化是一个意思吗
追答初始化是一定要先定义好的变量。也就是先定义后赋值,也可以定义的同时进行赋值或初始化。最简单的定义方法就是直接定义比如 char s
第3个回答 2012-07-23
string,数组最后一个字符为\0,“”
第4个回答 2012-07-23
不太懂