C/C 语言是一种通用的编程语言,具有高效、灵活和可移植等特点。C语言主要用于系统编程,如操作系统、编译器、数据库等;C语言是C语言的扩展,增加了面向对象编程的特性,适用于大型软件系统、图形用户界面、嵌入式系统等。C/C 语言具有很高的效率和控制能力,但也需要开发人员自行管理内存等底层资源,对于初学者来说可能会有一定的难度。
读文件并输出内容: 逐个字符读取文件中的数据,直到遇到EOF结束标志是停止输出.
代码语言:c复制#include <stdio.h>
#include <stdlib.h>
int Read_File(FILE *fp)
{
if (fp == NULL)
return 0;
char ch;
// while ((ch = fgetc(fp)) != EOF)
while (!feof(fp))
{
ch = fgetc(fp);
if (feof(fp))
break;
printf("%c", ch);
}
}
int main(int argc, char* argv[])
{
FILE *fp = fopen("c:/lyshark.log", "r");
Read_File(fp);
system("pause");
return 0;
}
堆空间读取数据: 首先我们将数据读入到自己分配的堆空间中,然后直接输出堆空间中的字符串.
代码语言:c复制#include <stdio.h>
#include <stdlib.h>
int main(int argc, char* argv[])
{
FILE *fp = fopen("c:/lyshark.log", "r");
char *buffer = malloc(sizeof(char)* 1024);
while (feof(fp) == 0)
{
memset(buffer, 0, 1024);
fgets(buffer, 1024, fp);
printf("%s", buffer);
}
system("pause");
return 0;
}
一种特殊的文件操作: 这里我们举一个批量执行命令的案例,并通过格式化输出到缓冲区中.
代码语言:c复制#include <stdio.h>
int main(int argc, char* argv[])
{
char buffer[4096];
FILE *fi = _popen("ipconfig", "r");
while (fgets(buffer, 4096, fi) != NULL){
fprintf(stdout, "%s", buffer);
}
system("pause");
return 0;
}
写入字符串到文件: 将一个字符串写入到文件中,每次调用Write_File
都可以写入一段字符串.
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int Write_File(char *path, char *msg)
{
FILE *fp = fopen(path, "a ");
if(fp== NULL) return -1;
char ch, buffer[1024];
int index = 0;
while (msg[index] != '