c语言几个点
来源:互联网 发布:unity3d 灯光 编辑:程序博客网 时间:2024/05/21 15:49
1.逐行读取文件:http://www.cnblogs.com/kissazi2/archive/2012/10/29/2744153.html
#include <stdio.h> int main() { char filename[] = "D:\\阶段性学习\\大三上\\1.课程学习\\编译原理\\0903\\实验二\\test.c"; //文件名 FILE *fp; char StrLine[1024]; //每行最大读取的字符数 if((fp = fopen(filename,"r")) == NULL) //判断文件是否存在及可读 { printf("error!"); return -1; } while (!feof(fp)) { fgets(StrLine,1024,fp); //读取一行 jk //输出 } fclose(fp); //关闭文件 return 0; }
strtok函数会破坏被分解字符串的完整,调用前和调用后的s已经不一样了。如果要保持原字符串的完整,可以使用strchr和sscanf的组合等。第一次调用strtok需要传入要分割的字符串str进行初始化,随后对同一个字符串继续分割传入NULL即可。这个地方需要注意,如果不传入NULL,那么就会出现死循环,一直返回str第一个被分割出的子串。
#include<string.h>#include<stdio.h>int main(void){ char input[16]="abc,d"; char*p; /*strtok places a NULL terminator infront of the token,if found*/ p=strtok(input,","); if(p) printf("%s\n",p); /*Asecond call to strtok using a NULL as the first parameter returns a pointer to the character following the token*/ p=strtok(NULL,","); if(p) printf("%s\n",p); return 0;}
函数第一次调用需设置两个参数。第一次分割的结果,返回串中第一个 ',' 之前的字符串,也就是上面的程序第一次输出abc。
第二次调用该函数strtok(NULL,","),第一个参数设置为NULL。结果返回分割依据后面的字串,即第二次输出d。
strtok是一个线程不安全的函数,因为它使用了静态分配的空间来存储被分割的字符串位置
3.执行shell命令
popen() 函数通过创建一个管道,调用 fork 产生一个子进程,执行一个 shell 以运行命令来开启一个进程。这个进程必须由 pclose() 函数关闭,而不是 fclose() 函数。pclose() 函数关闭标准 I/O 流,等待命令执行结束,然后返回 shell 的终止状态。如果 shell 不能被执行,则 pclose() 返回的终止状态与 shell 已执行 exit 一样。
#include<string.h>#include<stdio.h>int main(void){ FILE * fp; char buffer[204800]; char line[200]; fp = popen("top -n 1 -b","r"); if (fp != NULL) { while (fgets(line, 200, fp) != NULL) { strcat(buffer, line); } printf("buffer=%s\n", buffer); } pclose(fp); return 0;}
0 0
- c语言几个点
- 几个C语言中的易混淆点
- C语言宏的几个注意点
- C 语言几个绝招
- 嵌入式C语言那点事(一)几个重要关键字
- 黑马程序员----c语言入门疑难点--几个经典的算法
- C语言注意点
- C语言24点
- C语言面试点
- C语言注意点
- C语言注意点
- C语言的点
- C语言注意点
- 几个常用C语言函数
- 几个简单C语言算法
- C语言: 几个测试题
- C语言的几个函数
- C语言几个排序算法
- 记住密码相关问题!
- 我知道在成长的路上都不容易。(ZEALER)
- BroadcastReceiver总结
- 信息系统项目管理师-论文要求
- 从一个点云中提取索引
- c语言几个点
- lintcode-在O(1)时间复杂度删除链表节点-327
- Java内存回收机制
- 信息系统项目师考点
- 信息系统项目管理师一些重要问题和知识点
- 关于添加环境变量的一点问题
- 线段树+扫描线问题
- 自定义ToastUtil工具类,可解决快速显示Toast文本问题
- ZOJ 3913 Bob wants to pour water (计算几何+二分)