RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
c语言中字符数组函数 c语言数组符号

C语言中字符数组及字符串处理函数

一、字符数组的定义

十载的开原网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都营销网站建设的优势是能够根据用户设备显示端的尺寸不同,自动调整开原建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“开原网站设计”,“开原网站推广”以来,每个客户项目都认真落实执行。

一维字符数组:用于存储和处理1个字符串,其定义格式与一维数值数组一样。

char str[20];

二维字符数组:用于同时存储和处理多个字符串,其定义格式与二维数值数组一样。

char country[10][20];

country[i]:第i个字符串

二.字符数组的初始化

字符数组的初始化.

1.可以通过为每个数组元素指定初值字符来实现。

char str[10]={ 'I',' ','a','m',' ',‘h’,'a','p','p','y'};

char str[ ]={"I am happy"}; 可以省略花括号,如下所示

char str[ ]="I am happy";

char country[10][20]={“china”,”japanese”,……};

注意:上述这种字符数组的整体赋值只能在字符数组初始化时使用,不能用于字符数组的赋值,字符数组的赋值只能对其元素一一赋值,下面的赋值方法是错误的

char str[15];

str="I am happy";

strcpy(str, "I am happy");

不是用单个字符作为初值,而是用一个字符串(注意:字符串的两端是用双引号“”而不是单引号‘’括起来的)作为初值。

‘a’ “a”区别

三、字符数组的引用

字符数组的逐个字符引用,与引用数值数组元素类似。

(1)字符数组的输入

除了可以通过初始化使字符数组各元素得到初值外,也可以使用getchar()或scanf()函数输入字符。

例如:

char str[10];

…… for(i=0; i10; i++)

{ scanf(\"%c\", str);

fflush(stdin); /*清除键盘输入缓冲区*/

}

这里只是一部分具体你查看这里:

c语言,字符数组函数

#include stdio.h

/*比较两个字符串*/

/*src、dst相等 return 1*/

/*src比dst短 return -2*/

/*src比dst长 return 2*/

/*src、dst长度一致但不相等 return -1*/

int stringCmp (char *src, char *dst) {  

if (strlen (src)  strlen (dst))

return -2;

else if (strlen (src)  strlen (dst))

return 2;

else {

while (*src  *dst) {

if (*src != *dst)

return -1;

src++;

dst++;

}

return 1;

}

}

/*合并两个字符串*/

void mergeString(char* str1, char* str2, char* merge) {

while (*merge++ = *str1++); /*复制str1并将指针移动到字符串的末尾的下一个位置*/

merge--; /*退到字符串的末尾*/

while (*merge++ = *str2++); /*从末尾(\0)的位置开始将str2拷贝进来*/

*merge = '\0';

}

int main(void) {

char *str1_1="hel",*str1_2="lo", *merge1;

char *str2_1="ness",*str2_2="happy", *merge2;

char *str3_1="hi",*str3_2="hi", *merge3;

char *str4_1="hello",*str4_2="world", *merge4;

puts ("第1组字符串:");

puts (str1_1);

puts (str1_2);

if (stringCmp (str1_1, str1_2) == 1)

puts (str1_1);

else if (stringCmp (str1_1, str1_2) == -2) {

mergeString (str1_2, str1_1, merge1);

puts (merge1);

}

else if (stringCmp (str1_1, str1_2) == 2 || stringCmp (str1_1, str1_2) == -1) {

mergeString (str1_1, str1_2, merge1);

puts (merge1);

}

putchar ('\n');

puts ("======================================================");

putchar ('\n');

puts ("第2组字符串:");

puts (str2_1);

puts (str2_2);

if (stringCmp (str2_1, str2_2) == 1)

puts (str2_1);

else if (stringCmp (str2_1, str2_2) == -2) {

mergeString (str2_2, str2_1, merge2);

puts (merge2);

}

else if (stringCmp (str2_1, str2_2) == 2 || stringCmp (str2_1, str2_2) == -1) {

mergeString (str2_1, str2_2, merge2);

puts (merge2);

}

putchar ('\n');

puts ("======================================================");

putchar ('\n');

puts ("第3组字符串:");

puts (str3_1);

puts (str3_2);

if (stringCmp (str3_1, str3_2) == 1)

puts (str3_1);

else if (stringCmp (str3_1, str3_2) == -2) {

mergeString (str3_2, str3_1, merge3);

puts (merge3);

}

else if (stringCmp (str3_1, str3_2) == 2 || stringCmp (str3_1, str3_2) == -1) {

mergeString (str3_1, str3_2, merge3);

puts (merge3);

}

putchar ('\n');

puts ("======================================================");

putchar ('\n');

puts ("第4组字符串:");

puts (str4_1);

puts (str4_2);

if (stringCmp (str4_1, str4_2) == 1)

puts (str4_1);

else if (stringCmp (str4_1, str4_2) == -2) {

mergeString (str4_2, str4_1, merge4);

puts (merge4);

}

else if (stringCmp (str4_1, str4_2) == 2 || stringCmp (str4_1, str4_2) == -1) {

mergeString (str4_1, str4_2, merge4);

puts (merge4);

}

putchar ('\n');

puts ("======================================================");

putchar ('\n');

getch (); /*屏幕暂留*/

return 0;

}

运行结果

c语言计算字符数组的长度

1、在c语言中,可以通过库函数strlen来计算字符串的长度,也可以通过循环计数来求取字符串长度。

函数原型:unsigned

int

strlen(char

*str);

能:统计字符串str中字符的个数,不包含'\0'

值:返回字符个数

2、用strlen函数实现:

char str[20];

int len; // 保存数组的长度

scanf("%s", str);

len = strlen(str); // 计算字符数组str的长度

注:需将头文件#include

添加进源文件中。3、用循环来实现:

char str[20];

int len=0; // 保存数组的长度

scanf("%s", str);

while(str[len] != '\0') // 未检测到结束字符

{

len++; // 统计字符数组str的长度

}


标题名称:c语言中字符数组函数 c语言数组符号
网页链接:http://lswzjz.com/article/hpejpd.html