C语言-字符串(单个字符)

一.字符串(单个字符)的定义数组

1.单个字符的定义函数

char i = ‘x’ (单个字符的定义)

字符串建立后为常量没法修改spa

2.一维字符串数组的定义指针

char i []=”xxxx”;(此方式定义的一维字符串数组必须马上赋值)
char i [4];(此方式至关于在存储器里面创建一个能够存储3个字符的数组空间)
char i [4]=”xxxx”;
char i [4]={‘x’’x’’x’’x’};

其中定义的数组的元素数要比实际赋值的数量多一,用于存放\0位置code

字符数组只有在定义时才能将整个字符串一次性地赋值给它,一旦定义完了,就只能一个字符一个字符地赋值了。blog

3.二维字符串数组的定义rem

char i[][80] = {
"xxxxxxx",
"xxxxxxx",
};

第一个方括号表明数组的行数,第二个方括号表明数组的列数,同时定义字符的个数(要比实际应用多一,用于存放\0位置)。字符串

二.字符串(单个字符)和一维字符数组输入string

1.scanf函数it

给字符串(单个字符)赋值

scanf(“%2s”, &x);(其中x为定义的char类型变量的名字)

给字符数组赋值

scanf(“%2s”, x);(其中x为定义的字符数组名字)

 

三. 字符串(单个字符)和一维字符数组的输出

1.单个字符的输出

printf (“%c”, x);对单个字符进行输出

X为char类型变量的名字

2.字符数组的输出

printf(“%s”, x);对字符串进行输出

X为字符数组名

四.字符串的处理

1.string.h头文件的使用
定义方法:#include <string.h>


经常使用的几个函数及功能:

strchr() 查找字符
stremp() 比较字符串
strstr() 在字符串中查找字符串 ,使用方法:strstr("被查找字符串", "须要查找的字符串");
strcpy() 复制字符串
strlen() 返回字符串的长度
strcat() 链接字符串
strdup() 复制字符串到堆上
strcmp() 用于比较两个字符串并根据比较结果返回整数。基本形式为strcmp(str1,str2),若str1=str2,则返回零;若str1<str2,则返回负数;若str1>str2,则返回正数

atoi 函数(在<stdlib.h>库文件中),是把字符串转换成整型数的一个函数

五.字符数组与指针之间一些注意事项

1.指针退化问题

char s[] ="xxxx";
char * t = s;

字符数组变量赋值给指针时,指针变量只会包含数组的地址信息,而丢失了数组的长度信息,这个信息的丢失称为指针退化。

六.为何字符串能够赋值给字符指针变量

char * a = "xxxx"

双引号作了3件事:  1.申请了空间(在常量区),存放了字符串 2. 在字符串尾加上了'/0'    3.返回地址

相关文章
相关标签/搜索