1. 首页 > 智能数码 >

c语言如何给字符串数组赋值专题(c语言中如何给字符串数组赋值)

小栢给大家谈谈c语言如何给字符串数组赋值专题,以及c语言中如何给字符串数组赋值应用的知识点,希望对你所遇到的问题有所帮助。

c语言如何给字符串数组赋值专题(c语言中如何给字符串数组赋值)c语言如何给字符串数组赋值专题(c语言中如何给字符串数组赋值)


1、1楼的答案是错误的,建议回答别人问题还是要看看书的!第一种方式:定义的时候进行初始化char str[200]={"abcd"};//这里去掉大括号也行第二种方式:对数组各元素单独赋值char str[200];str[200]={'a','b','c','d'};/*编译系统会在最后加上'\0'的,然后就是不能使用str[200]="abcd"的方式对字符数组进行整体赋值*/第三种方式:应该是使用指针吧char *str="abcd";或者 char *str;str="abcd";使用指针时,这两种方式都是可以的,而且你可以使用下标的方式引用字符串中的各字符1、定义的时候直接用字符串赋值char a[10]="hello";注意:不能先定义再给它赋值,如char a[10]; a[10]="hello";这样是错误的!2、对数组中字符逐个赋值char a[10]={'h','e','l','l','o'};3、利用strcpychar a[10]; strcpy(a, "hello");易错情况:1、char a[10]; a[10]="hello";//一个字符怎么能容纳一个字符串?况且a[10]也是不存在的!2、char a[10]; a="hello";//这种情况容易出现,a虽然是指针,但是它已经指向在堆栈中分配的10个字符空间,现在这个情况a又指向数据区中的hello常量,这里的指针a出现混乱,不允许!还有:不能使用关系运算符“==”来比较两个字符串,只能用strcmp() 函数来处理。

2、char str1[12];int i;for(i=0;iscanf("&c",&str1[i]);char str1[12];int i;scanf("&s",&str1);char str1[12];gets(str1);我应该没有也弄错你的意思吧。

3、char str[200]="abcd";char str[200]={"abcd"};char str[200];str[200]="abcd";不晓得你还要什么常用的就2种:1 char str[]="fdsklfaf";2 char str[]={'a','b','c','\0'}。

本文到这结束,希望上面文章对大家有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息