sytn.net
当前位置:首页 >> C语言中字符串使用字符数组来处理,任何字符数组都... >>

C语言中字符串使用字符数组来处理,任何字符数组都...

字符数组里要有内容,或初始化过,并要有字符串结束符,才好用%s输出.

字符串本身就是一数组(c风格字符串),以0字符结尾 这里的a说成是字符数组没问题,说成是字符串也对 因为c里字符串的组织形式本质就是数组

char c[10];//c是数组名,代表数组的首地址.要是想让数组中存放一个字符串,只需知道首地址即可.所以可以用scanf("%s",c);因为c本身就是地址,所以不用加& char *s; //s是指针变量,指针可以存放一个地址值 s="abcde"; //c语言中字符串常量是以数组的形式在内存中存放,这条赋值语句,相当于是把abcde的首地址赋给了指针变量s char s; //s是一个字符变量,只能给其赋一个合法的字符

直接将字符数组的数组名赋值给另一个字符数组即可.比如:char a[] = "adsdfs"; char b[10]; b = a; // 就是将字符数组a赋给字符数组b puts(a); // 输出adsdfs puts(b); // 输出adsdfs

c语言中没有字符类型,都是通过字符串数组实现字符串的操作,字符串数组的末尾一定是以'/0'结束,标志字符串结束.字符串输入可以用printf的%s,或者gtes 字符串输出可以用printf的%s,或者puts

直接 char s[20]; scanf("%s",s); 就可以啦!在C语言中,字符串本来就是以数组的形式存储的.

1.字符数组可能没有尾0,不能直接当字符串用;2.尾0要占用数组的一个单元,所以,数组必须有多余的单元;3.如果没有多余的单元,就要重新产生一个较大一点的数组;4.在字符数组有效字符后,加一个尾0 即 '\0\,就成了字符串;

字符串和字符数组还是有一点区别的:字符串必须以'\0'结尾,而字符数组则不一定,不过如果你用字符串来初始化字符数组时,'\0'也会被加到数组结尾,所以数组长度是字符串长度+1你所说的情况应该两个都可以用.

C语言允许用字符串的方式对数组作初始化赋值.例如:static char c[]={'c',' ','p','r','o','g','r','a','m'}; 可写为:static char c[]={"C program"}; 或去掉{}写为:static char c[]="C program"; 当对全体元素赋初值时也可以省去长度说明.例如:

网站首页 | 网站地图
All rights reserved Powered by www.sytn.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com