strspn&strcspn
size_t strspn (const char *s,const char * accept);#include <string.h>
#include <stdio.h>
main()
{
char *str="Linux was first developed for 386/486-based pcs.";
printf("%d\n",strspn(str,"Linux"));
printf("%d\n",strspn(str,"/-"));
printf("%d\n",strspn(str,""));
}
运行结果:
5
0
0
#include <string.h>
main(void)
{
char *str = "Linux was first developed for 386/486-based pcs. ";
printf("%d\n", strcspn(str, " "));
printf("%d\n", strcspn(str, "/-"));
printf("%d\n", strcspn(str, ""));
}
运行结果:
5
33
30
编程使用:key-value去掉参数前面的空格
int _nvram_init(void *unused)
{
FILE *in;
char buffer[SIZE], *token, *line;
int i;
if (!(in = fopen(PATH_DEV_NVRAM, "r"))) {
printf("nvram file can not open\n");
return -;
}
while (fgets(buffer, 300, in)) {
if (strchr(buffer, '\n')) *(strchr(buffer, '\n')) = '\0';
token = buffer + strspn(buffer, " ");
if (*token == '\0') continue;
line = token + strcspn(token, "=");
if (*line == '\0') continue;
*line = '\0';
line++;
/* eat leading whitespace */
line = line + strspn(line, " ");
/* eat trailing whitespace */
for (i = strlen(line); i > 0 && (line[i - 1]==' '); i--);
line[i] = '\0';
_nvram_set(token,line);
}
fclose(in);
printf("nvram init----\n");
return 0;
}
strspn&strcspn的更多相关文章
- udhcpd源码分析2--读取配置文件
1:重要的结构体 读取配置文件信息到全局的结构体struct server_config_t server_config中,这个结构在很多文件中都有引用到很重要. /* dhcpd.h */ stru ...
- 自己编写的str操作函数
1.strcat() 此函数原型为 char *strcat(char *dest, const char *src). 功能为连接两个字符串,把src连接到dest后面:返回dest地址 实现如下 ...
- php回顾(3)系统函数
abs() 绝对值 ceil() 向上取整 floor() 向下取整 round() 四舍五入 第二个参数:保留小数点后面几位 ...
- strspn 和strcspn
1.strcspn头文件:#inclued<string.h>定义函数:size_t strcspn(const char *s, const char * reject);函数说明:st ...
- 【 C 】高级字符串查找之 strspn 和 strcspn 的思考
我的CSDN博客 strspn 这个库函数是真的很难理解,看了很多中文描述,反正都是不知所云,给出一系列的例子,结果也是让我瞠目结舌,荒唐.荒谬.荒诞! 特此记录理解过程,最后竟然是百度百科让我明白了 ...
- strspn() 和 strcspn() 函数【转】
本文转载自:https://flyer103.wordpress.com/2011/06/03/strspn-%E5%92%8C-strcspn-%E5%87%BD%E6%95%B0/ 前几天在看一本 ...
- strspn和strcspn妙用
http://blog.csdn.net/aidenliu/article/details/5460201
- 内存及字符串操作篇strlen strchar strcmp strcoll strcpy strdup strstr strtok strspn strrchr bcmp bcopy bzero index memccpy memset
bcmp(比较内存内容) 相关函数 bcmp,strcasecmp,strcmp,strcoll,strncmp,strncasecmp 表头文件 #include<string.h> 定 ...
- 由ffmpeg中avformat模块中的 URL_SCHEME_CHARS 看 strspn( ) 的妙用
在ffmpeg的avformat 模块中avio.c 对 URL_SCHEME_CHARS 的定义: #define URL_SCHEME_CHARS \ "abcdefghijklmnop ...
随机推荐
- 隐藏系统EFI分区Z盘
找到C:\Windows\System32\cmd.exe程序, 右键单击cmd 选择以管理员身份运行, 打开命令提示符,输入以下命令(不区分大小写)DiskPart回车List空格volume回车s ...
- spinner自定义,效果如腾讯QQ账号选择时候的下拉列表
下拉列表在android中自带spinner的有时候不太适合我们的界面,我们希望有自己的一种显示方法,那怎么办?自定义Spinner.效果如QQ账号选择一样.如图所以. 这种效果,如果你喜欢 ...
- hadoop运行报错Wrong FS: hdfs:/, expected: file:///
内容源自:https://blog.csdn.net/u014470581/article/details/51480600 报错信息: Exception in thread "main& ...
- mysql多实例介绍及配置
mysql多实例介绍及配置 1.mysql多实例介绍 1.1 什么是mysql多实例 mysql多实例就是在一台机器上开启多个不同的服务端口(如:3306,3307),运行多个MySQL服务进程,通过 ...
- [Webpack] Detect Unused Code with Webpack and unused-files-webpack-plugin
As you refactor and modify applications, it's difficult to manage and keep track of files as they be ...
- Android_Activity知识点
一:安卓的目录下面有两个文件夹,一个是assets一个是RES其中在resw文件夹放的所有东西都会在R文件夹中自动对应的生成了一个ID,那么在assets中我们可以放关于这个工程的任何文件. 二:dr ...
- JMeter 十四:最佳实践
参考:http://jmeter.apache.org/usermanual/best-practices.html 1. 总是使用最新版本的JMeter 2. 使用合适数目的Thread Threa ...
- LoadRunner监控Tomcat的几种方法
通过JConsole监控Tomcat 1.打开tomcat5的bin目录中的catalina.bat文件,在头部注释部分的后面加上: set JAVA_OPTS=%JAVA_OPTS% -Dcom.s ...
- Sublime Text 3 JS 格式化插件 JsFormat的配置使用
1.首先需要下载安装包:(下载地址:https://github.com/jdc0589/JsFormat) 2.插件包放到sublime安装目录的Data\Packages目录中 3.快捷键 Ctr ...
- Asp.Net MVC中递归死循环问题
在写代码的时候,很欢乐地发现报错了. An unhandled exception of type 'System.StackOverflowException' occurred in mscorl ...