popen strtok 函数的使用
FILE
* popen (
const
char
* command ,
const
char
* type );
int
pclose (
FILE
* stream );
long long len;
char *tok;
char buf[512];
FILE *p = popen("df -h", "r");
while(fgets(buf, sizeof(buf)-1, p) != NULL)
{
printf("%s\n", buf);
}
tok = strtok(buf, " ");
tok = strtok(NULL, " ");
len = atoll(tok);
printf("%lld\n", len);
tok = strtok(NULL, " ");
len = atoll(tok);
printf("%lld\n", len);
pclose(p);
---------------------------------------------------
strtok()用来将字符串分割成一个个片段。参数s指向欲分割的字符串,参数delim则为分割字符串中包含的所有字符。
当strtok()在参数s的字符串中发现参数delim中包含的分割字符时,则会将该字符改为\0 字符。
在第一次调用时,strtok()必需给予参数s字符串,往后的调用则将参数s设置成NULL。每次调用成功则返回指向被分割出片段的指针。
strtok函数会破坏被分解字符串的完整,调用前和调用后的buf已经不一样了
int i = 0;
char buf[] = "192..168.0...8...";
int len = strlen(buf);
char *p = strtok(buf, ".");
printf("%s\n", p);
printf("%s\n", buf);
for(i=0;i<len;i++)
{
printf("%c", buf[i]);
}
printf("\n");
p = strtok(NULL, ".");
printf("%s\n", p);
p = strtok(NULL, ".");
printf("%s\n", p);
p = strtok(NULL, ".");
printf("%s\n", p);
最新文章
- C# Azure 消息队列ServiceBus (服务总线队列)
- matlab linux 安装
- linux 用户、用户组不能是全数字
- 未能加载文件或程序集";Microsoft.Web.Infrastructure 的解决方案
- 常用js总结1
- js语法
- Verify Preorder Serialization of a Binary Tree
- 【转】MySQL Temporary Table相关问题的探究
- [C语言 - 6] static &; extern
- ClassLoader源码
- linux扩展权限
- JavaWeb文件的上传与下载(1)
- delphi7编写客户端调用java服务器端webservice示例
- ssh免密钥登录
- WCF 自承载
- Solr field alias
- 玛雅游戏[NOIP2011]
- 【SpringBoot】整合定时任务和异步任务
- namespace关键字学习笔记
- js(鼠标键盘拖动事件)
热门文章
- 05:ModelForm 数据验证 &; 生成html &; 数据库操作
- php在Nginx环境下进行刷新缓存立即输出,实现常驻进程轮询。
- 20145220韩旭飞《网络对抗》实验九:web安全基础实践
- sbt介绍与构建Scala项目
- Python3基础 str format 位置参数与关键字参数
- 【第三十二章】 elk(3)- broker架构 + 引入logback
- spring boot 修改Tomcat端口
- 接口中带参方法,传入IB类型的数据
- org.apache.axis2.AxisFault: java.lang.Error: Unresolved compilation problem:
- UVa 11584 划分成回文串