字符串
1.C语言中的字符串
C语言中的字符串类型是用来处理文本信息数据的。它是由字母、数字、下划线组成的一串字符。我们把这样的数据类型称之为字符串或串。
2.文本数据
2.1 字符串类型常量 " 引起来的内容就是字符串常量"
例子:
"6222 0202 0000 3518997" 中国工商银行卡19位
"955888 0200 005433378" 中国工商银行 理财金卡
"0200 0981 0100 0351899X" 活期存折账号20位
"I LOVE YOU!!"
"A0b9D6e3"
2.2 字符串类型变量
2.2.1 字符数组(特殊 '\0')
用一个以\0结尾的字符数组来表示字符串这个数据类型。
声明一个字符串类型的变量
char name[20] = "瑞哥";
char no[256] = "6222 0102 0300 3518997";
char admin[20] = "admin";
char password[20] = "admin";
char string[20] = "";
char str[20] = {0};
注意:"="给字符数组初始化的时候,只能赋值一次,如果我想再次修改name的值,就不能再使用"="赋值了。
即 name = "拿破仑";//错误的
必须借助字符串的库函数,strcpy()来赋值。
2.2.2 字符指针
char *string = "瑞哥";
string = "rui_gege";//正确的
3.常见的字符串的库函数
中如果是单独只判断是
字符的函数 中(测试字符的库函数)
3.1 strlen();
函数原型:int strlen(char *s);
extern int strlen(char * s);
函数参数:char *s 表示是一个字符串。
函数返回值:int 就是返回一个整型的值。strlen计算的是字符串中字符的真实个数(不含\0)。
函数作用:就是计算字符串的长度,或测试字符串是否是空串。如果是空串 strlen();结果为0。
3.2 strcpy();
函数原型:char *strcpy(char *s,const char *s1);
函数参数:2个 第一个是一个字符串(目),第二个源字符串。
函数返回值:char * 返回字符串,目标字符串
函数作用:复制字符串,常用于字符串的赋值。
strncpy();
函数原型:char *strncpy(char *s,const char*s1,int n);
函数参数:2个 第一个是一个字符串(目),第二个源字符串。参数3 指定字符个数
函数返回值:char * 返回字符串,目标字符串
函数作用:复制指定字符个数的字符串,常用于字符串的赋值。
3.3 字符串的输入和输出
3.3.1 输入 gets();
fgets();
函数原型:char * gets(char *str);
参数:字符串
返回值:指向该字符串的字符指针。
3.3.2 输出 puts();
函数原型:int puts(const char *s);
3.4 字符串的拼接和分割
strcat();
函数原型:char * strcat(char *s,const char*s1);
参数:1.拼接以后的字符串 2.要拼接的字符串
返回值:char * 指向拼接完毕以后的字符串
作用:拼接字符串用 I LOVE YOU!
strtok();
函数原型:char *strtok(char *s,const char* s1);
3.5 字符串比较
strcmp();
函数原型:int strcmp(char *s,const char*s1);
参数:要比较的两个字符串
返回值:int 整数
0 表示两个字符串相等
1 表示字符串1 >字符串2
-1 串1
补充:
atoi 函数
作用:把字符串类型(文本类型的整数)转换成int整型的值。
char strnum[20] = "100";//这样的100不能参与运算,atoi()函数,从字符串转成整型。
atol 函数 atof函数,字符串类型小数转成double类型的小数。
strtok()字符串的分割
strstr() 字符串的查找 在主串中找子串
strchr() 在主串中找某一个字符第一次出现的位置
4.字符串数组
4.1 二维数组表示字符串数组
char name[5][20] = {"盖伦","赵信","皇子","凯南","蛮子"};
输出字符串
for(i=0;i<5;i++)
{
printf("%s\n",name[i]);
}
例子:使用字符串比较函数,字符串数组,写一个程序,你初始化数组为"关羽","张飞","赵云","马超","黄忠",你输入一个人名判断是不是五虎上将。
4.2 字符指针数组(字符数组)
char *name[5] = {"一","二","三","四","五"};
注意:就是如果是中文字符不能用' '输出,必须当成字符串去处理。
5.认识主函数
1.main()
2.int main()
3.int main(void) 项目中
4.int main(int ,char**);
5.int main(int argc,char *argv[]);//带参数1.个数 2.参数值
6.int main(int argc,char **argv);
7.int main(int argc,const char*argv);
8.void main(void);