C语言基础 10 函数

不可以使用操作符操作字符串,应该使用一组标准函数

为了使用这些标准函数需要包含string.h头文件

strlen      统计字符串里有效字符的个数和sizeof不同

 

strcat      合并两个字符串这个函数有可能修改不属于数组的存储区,这会造成严重错误

 

strncat     这个函数的功能和strcat一样但是它可以避免strcat函数的问题

 

strcmp      比较两个字符串的大小返回值是1表示前一个字符串大返回值是0表示   ---          样大返回值是-1表示后一个字符串大

 

strncmp     只比较两个字符串的前n个字符

 

strcpy      把一个字符串复制到字符数组里这个函数有可能修改不属于数组的存储区,这  -           也会造成严重错误

 

strncpy     功能和strcpy类似,但是只复制字符串中前n个字符

 

memset      可以把字符数组中前n个存储区内容设置成同一个字符

 

strstr      可以在一个大字符串里查找某个小字符串的位置,如果前一个字符串里不包含

后一个字符串则返回值是NULL

 

以下两个字符串相关函数不需要包含string.h头文件

sprintf    把多个数字按照格式记录到字符数组里形成一个字符串

 

sscanf     按格式从字符串里获得数字并记录到存储区里

 

以下两个函数可以把字符串里的数字转换成数字类型

 

为了使用这两个函数需要包含stdlib.h头文件

atoi       可以把字符串里不带小数点的数字转换成整数类型

 

atof       可以把字符串里带小数点的数字转换成浮点类型

 

可以在scanf函数调用语句中使用%s作为占位符从键盘得到一个字符串并记录到一个字符数组里采用这种方法会产生严重问题

 

fgets函数也可以从键盘得到字符串并记录到字符数组里

这个函数可以避免scanf函数的问题

这个函数需要三个参数

1.数组名称

2.数组里存储区的个数

3.stdin表示键盘

 

如果输入的内容不足以把数组充满就把用户最后输入的换行字符也读入到数组里

 

如果输入内容超过数组能容纳的范围就把多余的数据留在输入缓冲区里等下次读取

 

每次使用fgets函数之后应该在一个分支里 清理输入缓冲区里可能存在的多余数据

 

指针数组里每个存储区是一个指针类型的存储区

 

字符指针数组包含多个字符类型的指针,每个指针可以代表一个字符串

 

字符指针数组可以用来代表多个相关字符串

 

二维字符数组也可以记录多个相关字符串

 

一般采用字符指针数组记录多个相关字符串

 

#define预处理指令可以用来定义宏

 

宏可以用来给数字起名字

定义宏的时候要把名称写在前面,把它所代表的数字写在后面

宏名称通常由大写英文字母构成

宏名称里不可以包含空格

用宏给数字起名字的时候不要使用赋值操作符

 

编译器会把程序中的所有宏名称替换成它所代表的数字,然后再进行其他处理

 

可以在编译命令中使用-D选项指定宏所代表的数字

 

如果程序中的一些数字在编写的时候无法确定,只有在编译的时候才能知道就可以用宏代表它们

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值