您的位置:首页 > 编程语言 > C语言/C++

字符串操作常用函数——C语言

2012-09-14 15:18 363 查看
最近做的一些关于字符串操作的题目,发现其实很多操作都可以直接调用相关函数的,只是因为这些函数比较基础,所以会被直接拿来当笔试题。不过在解决稍复杂的一些问题时,直接调用函数比自己写一个省事多了。挑几个常用的写在这里。

strstr() 字符串查找函数

char* strstr( const char* haystack, const char* needle );

从字符串haystack中搜寻字符串needle,并将其第一次出现的地址返回。

返回:指定字符串第一次出现的地址,否则返回0

strncpy() 复制字符串

char* strncpy( char* dest, const char* src, size_t n );

将参数src字符串拷贝前n个字符至参数dest所指的地址

返回:参数dest的字符串起始地址

strncat() 字符串连接函数

char* strncat( char* dest, const char* src, size_t n );

将参数src字符串拷贝n个字符到参数dest所指的字符串尾。第一个参数dest要有足够空间容纳要拷贝的字符串

返回:参数dest的字符串起始地址

strlen() 字符串长度计算函数

size_t strlen( const char* s );

用于计算指定字符串s的长度,不包括结束字符"\0"

返回:字符串s的字符数

strcmp() 字符串比较函数(比较字符串)

int strcmp( const char* s1, const char* s2 );

用于比较s1和s2字符串。依据ASCII码值进行比较。

返回: 若s1与s2字符串相同则返回0,若不等则返回差值(s1 - s2)。

toupper(), tolower() 字符串大小写转换函数

#include<ctype.h>

int toupper( int c );

若参数c为小写字母则将该参数转换为大写字母返回

返回:转换后的大写字母,若不需要转换则返回c值

strtoul(), strtol(), strtod() 将字符串转化为无符号长整型,长整型,浮点数

#include<stdlib.h>

unsigned long int strtoul( const char* nptr, char **endptr, int base );

将参数nptr字符串根据参数base来转换成无符号的长整型数

参数base代表采用的进制方式( 8, 10, 16 )

返回:转换后的长整型数,否则返回erange并将错误代码存入errno中

atol(), atoi(), atof() 将字符串转换为长整型,整型,浮点型数

include<stdlib.h>

double atof( const char* nptr );

扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时才结束转换

返回:转换后的浮点型数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: