在c语言中 字符串如何去定义?有几种定义方法
6个回答
展开全部
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的字符数组只能在定义时一起赋值,以后只能给单个元素一一赋值;”中“字符数组”应该是“字符串”吧
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一、简单的定义方法可以直接定义,比如:char s="asf32gs"
二、也可以存放在数组中 char s1="f3asf"
二、也可以存放在数组中 char s1="f3asf"
追问
字符串的定义和初始化是一个意思吗
追答
初始化是一定要先定义好的变量。也就是先定义后赋值,也可以定义的同时进行赋值或初始化。最简单的定义方法就是直接定义比如 char s
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
string,数组最后一个字符为\0,“”
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询