C语言的字符串常用函数(18种)
题目
1.gets()
2. fgets()
3. puts()
4. fputs()
5. sprintf()
6. fprintf()
7. sscanf()
8. atoi(), atol(),atof()
9. strstr
10,strcpy(str1,str2)
11,strncpy(str1,str2,size_t)
12,memset(str,0,5)
13,strcmp(str1,str2)
14,strncmp(str1,str2,size_t)
15,strcat(str,"his is a string")
16,strncat(str,"Bye Bye.", 5);
17,strlwr(字符串)
18,strupr(字符串)
1.gets()
(1) 头文件#include <stdio.h>(2) 函数原型char *gets(char *s);(3) 功能从标准输入设备读入字符,并保存到指定的内存空间, 直到出现换行符或读到文件结尾为止(4) 参数s: 字符串首地址(5) 返回值成功: 返回读入的字符串失败: NULL(6) 和scanf("%s",s);区别 scanf(); 遇到空格,读取结束 (默认以空格分开) ,并且不会做越界检查------这也是, 编译器建议不用scanf的原因 ***gets(); 允许有空格, 但是也不做越界检查 ***
2. fgets()
(1) 头文件#include <stdio.h>(2) 函数原型char *fgets( char *str, int count, FILE *stream );char *fgets( char *restrict str, int count, FILE *restrict stream );(3) 功能从给定文件流读取最多 count - 1 个字符并将它们存储于 str 所指向的字符数组。若文件尾出现或发现换行符则终止分析,后一情况下 str 将包含一个换行符。若读入字节且无错误发生,则紧随写入到 str 的最后一个字符后写入空字符。若 count 小于 1 则行为未定义。亦不指定是否写入空字符,若 count==1 。(4) 参数str: char 数组元素的指针count: 的最大字符数(典型的为 str 的长度)stream: 取数据来源的文件流(5) 返回值成功: 返回字符失败或到文件结尾: NULL(6) 实例char buf[100];// 从stdin (代表标准输入,键盘),读取数据//注意也会把换行符读进去fgets( buf,sizeof(buf),stdin);
3. puts()
(1) 头文件#include <stdio.h>(2) 函数原型int puts(const char *s);(3) 功能标准设备输出s字符串,完成后自动在屏幕输出一个'\n'(4) 参数s: 字符串首地址(5) 返回值成功 : 非负数
失败 : -1
4. fputs()
(1) 头文件#include <stdio.h>(2) 函数原型int fputs(const char *str,FILE *stream);(3) 功能将str所指定的字符串写入到stream所指定的文件中,字符串'\0'不写入文件中(4) 参数str : 字符串stream : 文件指针, 如果把字符串输出到屏幕上写为stdout(5) 返回值成功 0失败 -1(6) 注意fputs 是puts的文件版本,但是前者不会自动输出'\n'
用 puts gets 函数只能输出或者输入一个字符串,不能写成
5. sprintf()
(1) 头文件#include <stdio.h>(2) 函数原型int sprintf( char *buffer, const char *format, ... );例 ,sprintf(buf," " ,a);(3) 功能格式化一个字符串,并把字符串输入到指定数组
格式化字符串, 并把内容输入到指定文件
7. sscanf()
从数组中按照指定格式提取内容例: //提取整型char buf[] = "a = 1, b = 2, c = 3";int a,b,c;sscanf(buf,"a = %d, b = %d, c = %d",&a,&b,&c);//提取字符串,默认以空格为分隔 (其他的不可以)
8. atoi(), atol(),atof()
(1) 头文件#include <stdlib.h>(2) 函数声明int atoi( const char *str );(3) 功能扫描str ,跳过前面的空格字符, 知道数字或正负号才开始转换, 直到'\0'才结束转换(4) 参数str :需要转换的字符串指针(5) 返回值成功转换后的整数
9. strstr
1,定义和用法strchr()函数搜索在字符串中的第一次出现该函数时strstr()函数的别名
2,注释该函数时二进制安全的该函数是区分大小写的,如需进行不区分大小写的搜索,请使用stristr()函数
3,语法strchr(string,search,before_search);
[string]{必需规定被搜索的字符串}[search]{必需规定所搜索的字符串如果该参数是数字,则搜索匹配该数字对应的ASCII值的字符}
10,strcpy(str1,str2)
1,将字符str2复制到str1中,这个库函数不会检查str1的容量是否足够长度,因此字符串1的长度必须足够大。
2,字符串1必须写成数组形式,字符串2可以是数组名,也可以是一个字符串常量
3,赋值前对字符串1要初始化
4,不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。字符数组名是一个地址常量,他不能改变值,正如数值型数组名不能被赋值一样。如下面两行都是不合法的:
str1="china"; //企图用赋值语句将一个字符串常量直接赋值给一个字符数组。
str1=str2; //企图用赋值语句将一个字符数组直接赋值给另一个字符数组。
只能用strcpy函数将一个字符串复制到另一个字符数组中去。用赋值语句只能将一个字符赋给一个字符型变量或字符数组元素。如下面语句就是合法的:
char a[5],c1,c2;
c1='A';c2='B';
a[0]='C';a[1]='h';a[2]='i';a[3]='n';a[4]='a';
11,strncpy(str1,str2,size_t)
将字符串str2从头开始复制size_t个字符到str1中,这个库函数会检查str1的容量是否足够长
12,memset(str,0,5)
将str中的5个字符清空替换成0
13,strcmp(str1,str2)
比较str1和str2字符串的ASCII码的大小,会返回>0 、0、 <0中的一种。
如果参加比较的两个字符串都由英文字母组成,则有一个简单的规律:在英文字典中位置在后面的为大。例如:computer在字典中位置在compare之后,所以”computer>"compare".但应注意小写字母比大写字母大,所以“DOG"<"cat"
14,strncmp(str1,str2,size_t)
指定str1str2中size_t个元素比较,会返回>0 、0、 <0中的一种。
15,strcat(str,"his is a string")
将字符串拼接到str的后面,不检查str数组的长度
字符数组1必须足够大,以便容纳连接后的新字符串。连接前两个字符串的后面都有\0,连接后只在新字符串最后保留\0
16,strncat(str,"Bye Bye.", 5);
将字符串中的5个长度的字符拼接到str的后面,检查str数组的长度
17,strlwr(字符串)转换为小写的函数
将字符串中大写字母换成小写字母
18,strupr(字符串)转换为大写的函数
将字符串中小写字母换成大写字母
C语言的字符串常用函数(18种)相关推荐
- C语言中字符串常用函数--strcat,strcpy
strcpy 原型声明:extern char *strcpy(char* dest, const char *src); 头文件:#include <string.h> 功能:把从src ...
- c语言字符串未初始化strcat,C语言中字符串常用函数strcat与strcpy的用法介绍
strcpy原型声明:extern char *strcpy(char* dest, const char *src); 头文件:#include 功能:把从src地址开始且含有NULL结束符的字符串 ...
- [转载] python 语言基础 - 字符串常用函数及操作
参考链接: Python字符串| ljust rjust center python为字符串操作提供了很多常用的内建函数,让我们在操作字符串时能够更加简单方便. 下面以某个字符串为例来一一介绍一下 现 ...
- C语言文件读写常用函数总结
C语言文件读写常用函数总结 有点小头疼这几天复习,可是总是有些小可爱问有关C语言文件方面的内容,在此写篇博文一劳永逸. 目录 C语言文件读写常用函数总结 fopen函数 fclose函数 fseek函 ...
- 探索C语言之字符串分割函数:strtok和strsep的区别
探索C语言之字符串分割函数:strtok和strsep的区别 概述 strsep - extract token from string(linux 下) strtok, strtok_r - ext ...
- python 字符串转函数名_Python 使用函数名(字符串)调用函数(4种方法)
先看一个例子: >>> def foo(): print("foo") >>> def bar(): print("bar" ...
- php怎么查找函数库,php 查找字符串常用函数说明
本节内容: php 查找字符串常用函数介绍,主要介绍strstr的用法. 一.strstr - 查找字符串的首次出现 string strstr ( string $haystack , mixed ...
- Excel怎样从一串字符中的某个指定“字符”前后截取字符及截取字符串常用函数
原始字符串: 品种在源系统主键(id) 截取前面的 (品种在源系统主键): =LEFT(B3,FIND("(",B3)-1) 截取后面的 (id): =LEFT(RIG ...
- Excel怎样从一串字符中的某个指定“字符”前后截取字符及截取字符串常用函数...
怎么样可以从一串字符中的某个指定位置的前或后截取指定个数的字符. 如:12345.6789,我要截取小数点前(或后)的3个字符.怎么样操作, 另外,怎么样从右边截取字符,就是和left()函数相反的那 ...
最新文章
- CNN(Convolutional Neural Networks)算法
- PAT条条大路通罗马
- meta name=viewport content=width=device-width,minimum-scale=1.0,maximum-scale=1.0/
- HDU4279(2012年天津网络赛---数论分析题)
- python画图去掉边框
- 想学大数据,应该从什么语言开始学?
- Android获取所有Activity
- 主域控制器硬件损坏,你会怎么解决?(四)
- 广义线性模型(Generalized Linear Models, GLM)
- fiddler一直报错502
- [kuangbin带你飞]专题四 最短路练习
- python判断用户名密码是否正确_Python 判断输入的用户名和密码是否正确
- 北京市地震灾后规划信息化分析
- 马原复习知识点背诵-《马克思主义基本原理概论》
- 天下武功唯快不破WP
- Mothur5进阶_Mothur扩增子基因序列分析_基于OTU或ASV的多样性指数分析
- 李宏毅2020机器学习作业3-CNN:食物图片分类
- 常用工具类(一) 身份证+姓名+手机号码验证
- 如何在模拟器里面脱360的壳
- 使用ConnectBot开源项目在android设备上管理你的linux系统