c 语言中一些特殊函数的整理
2017-07-19 17:32
176 查看
1、gets( )函数
//gets认为回车是输入结束标示,空格不是输入结束标示,所以用gets这个函数就可以实现输入带空格的字符串
//gets和scanf一样存在缓冲区溢出的问题
int main()
{
char ch[100] = {0};
gets(ch);
int len = 0;
while (ch[len])
len++;
printf ("%s", ch);
return 0;
}
2、fgets( )函数
int main()
{
char s[100] = {0};
fgets(s, sizeof(s)/sizeof(char), stdin);
// 第一个参数是char的数组,第二个参数是数组的大小,单位:字节,
// 第三个参数stdin代表标准输入的意思
// fgets是安全的,不存在缓冲区溢出的问题,只要保证第二个参数小于等于数组实际的大小,就能避免缓冲区溢出问题
// fgets会将回车键读到数组里
printf("%s",s);
return 0;
}
3、puts( )函数
puts函数打印字符串,与printf不同,puts会在最后自动添加一个’\n’
4、fputs( )函数
fputs是puts的文件操作版本,
char s[] =
"hello world";
fputs(s, stdout);
5、strlrn( )函数
得到字符串长度;
char s[100] ="hello world";
int len = strlen(s);//得到字符串长度,返回一个字符串中有效字符的数量(不包含字符串结尾的0)
6、
(1)、strcat()字符追加函数
size_t strcat(char * _Str1,
const char * _Str2);
将参数_Str2追加到_Str1后尾
(2)、strncat( ) 字符串有限追加
size_t strncat(char * _Str1,
const char * _Str2, size_t len);
7、strcmp字符串比较
int strcmp(const char * _Str1,const char * _Str2);
比较两个字符串是否相等,相等返回0,不等返回非0
8、strcopy( ) 字符串拷贝
char *strcpy(char * _Str1,
const char * _Str2);
将参数_Str2拷贝到参数_Str1中
[b]9、 sprintf,格式化字符串[/b]
和printf函数功能类似,printf函数将格式化结果输出到屏幕,sprintf将格式化结果输出到字符串
[b]10、 sscanf函数[/b]
sscanf类似于scanf函数,,scanf从键盘读取用户输入,sscanf从指定格式化字符串读取输入
[b]11、 strchr查找字符[/b]
char * strchr(char *_Str,int _Ch);
在参数_str中查找参数_Ch指定字符,找到返回字符_Ch在_Str中所在位置,没有找到返回NULL;
[b]12、strstr查找子串[/b]
char * strstr(char *_Str,const char *_SubStr)
在参数_str中查找参数_SubStr指定子串,找到返回子串在_Str中所在位置,没有找到返回NULL;
13、字符串分割 strtok( )
字符在第一次调用时strtok()必需给予参数s字符串,往后的调用则将参数s设置成NULL每次调用成功则返回指向被分割出片段的指针
char buf[] =
"abc@defg@igk";
char *p = strtok(buf,
"@");
while (p)
{
printf("%s\n", p);
p = strtok(NULL,
"@");
}
14、ato( ) 转数据类型的函数,需要包含头文件stdlib.h
例如:atoi(char b);就是把char 型的 b变量转换成int 型的;
//gets认为回车是输入结束标示,空格不是输入结束标示,所以用gets这个函数就可以实现输入带空格的字符串
//gets和scanf一样存在缓冲区溢出的问题
int main()
{
char ch[100] = {0};
gets(ch);
int len = 0;
while (ch[len])
len++;
printf ("%s", ch);
return 0;
}
2、fgets( )函数
int main()
{
char s[100] = {0};
fgets(s, sizeof(s)/sizeof(char), stdin);
// 第一个参数是char的数组,第二个参数是数组的大小,单位:字节,
// 第三个参数stdin代表标准输入的意思
// fgets是安全的,不存在缓冲区溢出的问题,只要保证第二个参数小于等于数组实际的大小,就能避免缓冲区溢出问题
// fgets会将回车键读到数组里
printf("%s",s);
return 0;
}
3、puts( )函数
puts函数打印字符串,与printf不同,puts会在最后自动添加一个’\n’
4、fputs( )函数
fputs是puts的文件操作版本,
char s[] =
"hello world";
fputs(s, stdout);
5、strlrn( )函数
得到字符串长度;
char s[100] ="hello world";
int len = strlen(s);//得到字符串长度,返回一个字符串中有效字符的数量(不包含字符串结尾的0)
6、
(1)、strcat()字符追加函数
size_t strcat(char * _Str1,
const char * _Str2);
将参数_Str2追加到_Str1后尾
(2)、strncat( ) 字符串有限追加
size_t strncat(char * _Str1,
const char * _Str2, size_t len);
7、strcmp字符串比较
int strcmp(const char * _Str1,const char * _Str2);
比较两个字符串是否相等,相等返回0,不等返回非0
8、strcopy( ) 字符串拷贝
char *strcpy(char * _Str1,
const char * _Str2);
将参数_Str2拷贝到参数_Str1中
[b]9、 sprintf,格式化字符串[/b]
和printf函数功能类似,printf函数将格式化结果输出到屏幕,sprintf将格式化结果输出到字符串
[b]10、 sscanf函数[/b]
sscanf类似于scanf函数,,scanf从键盘读取用户输入,sscanf从指定格式化字符串读取输入
[b]11、 strchr查找字符[/b]
char * strchr(char *_Str,int _Ch);
在参数_str中查找参数_Ch指定字符,找到返回字符_Ch在_Str中所在位置,没有找到返回NULL;
[b]12、strstr查找子串[/b]
char * strstr(char *_Str,const char *_SubStr)
在参数_str中查找参数_SubStr指定子串,找到返回子串在_Str中所在位置,没有找到返回NULL;
13、字符串分割 strtok( )
字符在第一次调用时strtok()必需给予参数s字符串,往后的调用则将参数s设置成NULL每次调用成功则返回指向被分割出片段的指针
char buf[] =
"abc@defg@igk";
char *p = strtok(buf,
"@");
while (p)
{
printf("%s\n", p);
p = strtok(NULL,
"@");
}
14、ato( ) 转数据类型的函数,需要包含头文件stdlib.h
例如:atoi(char b);就是把char 型的 b变量转换成int 型的;
相关文章推荐
- 一些常用的JS自定义函数整理
- Oracle instr()函数的一些特殊用法
- go语言,一些零碎没时间整理
- (整理)关于C语言中的输入和输出函数的一些运用
- 一些常用函数的整理
- 【python】整理一些实用的函数
- cocos2dx中的一些常用函数整理
- sql 函数大全 比较常用的一些函数整理第1/2页
- OpenGL中一些函数的整理(一)
- [Python] Python中的一些特殊函数
- Swift 1.1语言函数参数的特殊情况本地参数名外部参数名
- 【python】整理一些实用的函数
- Xman整理篇___关于Python的一些基础方法及函数
- 整理一些实用的函数
- [置顶] Linux内核开发一些系统函数的说明整理
- 一些JavaScript时间处理函数整理
- MATLAB 图像处理一些实用函数整理
- R语言时间序列函数整理
- 一些被忽视的 PHP 函数(整理)
- 【python】整理一些实用的函数