c语言去文本节名,第18节 C语言之字符串与常见的字符串库函数

字符串

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);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值