C语言写的trim()函数
2016-06-14 17:23
253 查看
C语言的标准库中缺少对字符串进行操作的trim()函数,使用起来有些不便,可以使用利用 strlen 和 isspace 函数以及指针来自己写一个。
1、strlen 函数
原型:extern int strlen(char *s);
用法:#include <string.h>
功能:计算字符串s的长度
说明:返回s的长度,不包括结束符NULL。
2、isspace 函数
原型:extern int isspace(int c);
用法:#include <ctype.h>
功能:判断字符c是否为空白符
说明:当c为空白符时,返回非零值,否则返回零。
空白符指空格、水平制表、垂直制表、换页、回车和换行符。
3、trim 函数
4、应用举例
转自:http://blog.csdn.net/fengrx/article/details/4163148
1、strlen 函数
原型:extern int strlen(char *s);
用法:#include <string.h>
功能:计算字符串s的长度
说明:返回s的长度,不包括结束符NULL。
2、isspace 函数
原型:extern int isspace(int c);
用法:#include <ctype.h>
功能:判断字符c是否为空白符
说明:当c为空白符时,返回非零值,否则返回零。
空白符指空格、水平制表、垂直制表、换页、回车和换行符。
3、trim 函数
#include <string.h> #include <ctype.h> char *trim(char *str) { char *p = str; char *p1; if(p) { p1 = p + strlen(str) - 1; while(*p && isspace(*p)) p++; while(p1 > p && isspace(*p1)) *p1-- = '/0'; } return p; }
4、应用举例
int main() { int i = 0; char strs[][128] = { NULL, "", " ", "hello world", " hello", "hello world ", " hello world ", "/t/n/thello world ", "END" }; do { printf("trim(/"%s/")=%s./n", strs[i], trim(strs[i])); }while(strcmp(strs[i++], "END")); return 0; }
转自:http://blog.csdn.net/fengrx/article/details/4163148
相关文章推荐
- 现学现用 - C++监视热键源代码
- C++中的容器类详解
- C语言的结构体(篇章之一)
- 内联函数和宏函数
- C++中的static关键字
- C++ 二叉树(三叉链表存储)不使用栈的非递归算法
- C++ 重载==,使用栈的非递归算法
- 嵌入式C语言位运算之清位置位
- 嵌入式C语言位运算之清位置位
- 嵌入式C语言位运算之清位置位
- C# 中静态调用C++dll 和C# 中动态调用C++dll
- 堆排序(C++实现)
- Protocol Buffer技术详解(C++实例)
- sizeof和strlen的区别?
- C语言中的static 详细分析
- PAT乙级练习题1002. 写出这个数
- 【扫盲点】——C语言enum枚举类型、union共用体
- 通过windbg排查程序内存泄露
- C++面向对象编程
- C++面向对象基础知识详解一