file_read.c
#include <stdio.h>
#define STR_BUFF_MAX 10
int main() {
FILE *fp;
char str[STR_BUFF_MAX] = {0}; // 初始化为全0
fp = fopen("test.txt", "r"); // 打开文件
if(fp == NULL) {
printf("open failed.\n");
return 1;
}
fread(str, sizeof(char), sizeof(str), fp); // 读取数据
fclose(fp); // 关闭文件
str[STR_BUFF_MAX - 1] = '\0'; // 串结束符防止溢出
printf("%s", str);
return 0;
}
file_write.c
#include <stdio.h>
#include <string.h>
#define STR_BUFF_MAX 10
void PrintHelp(void)
{
printf("****************************************************\n");
printf("* Usage: \n");
printf("* filewrite <file name> <file context> \n");
printf("* filewrite test.txt 12345678ABCDEFG \n");
printf("* \n");
printf("****************************************************\n");
}
int main(int argc, char *argv[]) {
FILE *fp = NULL;
int i;
if (argc != 3) {
PrintHelp();
return -1;
}
fp = fopen(argv[1], "w"); // 打开文件
if(fp == NULL) {
printf("open file: %s failed.\n", argv[1]);
return 1;
}
fwrite(argv[2], sizeof(char), strlen(argv[2]) + 1, fp); // 写入数据
fclose(fp); // 关闭文件
return 0;
}
makefile
all : fileread filewrite
fileread : file_read.c
gcc file_read.c -o fileread
filewrite : file_write.c
gcc file_write.c -o filewrite