#include<stdlib.h> #include<stdio.h> #define BUFFER_SIZE 256 int main(){ FILE *stream; char buffer[BUFFER_SIZE];//缓冲区 char *line_return;//记录每次返回值(行) int line_count = 0;//记录行数 char tmp_itemName[32];//临时存放文件中的每行的项目名称 int itemReceive;//存放每一个网卡的接受到的字节总数(单位:Byte) int itemTransmit;//存放每一个网卡的已发送的字节总数(单位:Byte) system("cat /proc/net/dev"); printf("**************************************************************************************************************"); stream = fopen("/proc/net/dev", "r"); line_return = fgets (buffer, BUFFER_SIZE * sizeof(char), stream);//读取第一行 line_count++; printf(" [MAIN] line %d: %s ", line_count, line_return);//输出第一行 line_return = fgets (buffer, BUFFER_SIZE * sizeof(char), stream);//读取第二行 line_count++; printf(" [MAIN] line %d: %s ", line_count, line_return);//输出第二行 printf("**************************************************************************************************************"); while(line_return != NULL){ line_return = fgets (buffer, BUFFER_SIZE * sizeof(char), stream); line_count++; printf(" [MAIN] line %d: %s", line_count, line_return); sscanf( buffer, "%s%d%d%d%d%d%d%d%d%d", tmp_itemName, &itemReceive, &itemTransmit, &itemTransmit, &itemTransmit, &itemTransmit, &itemTransmit, &itemTransmit, &itemTransmit, &itemTransmit); printf("line %d:itemReceive: %d ", line_count, itemReceive); printf("line %d:itemTransmit: %d ", line_count, itemTransmit); } return 0; }