在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
经查找一些资料,并且亲自实验之后得出: r+:打开已存在的文件时,光标位于开头,文件可读,可写, 写数据时,由于光标位于开头,所以会覆盖原有数据 w+:打开的文件已存在时,将覆盖原文件 a+:打开已存在的文件时,光标位于文件尾,文件可读,可写 读数据时,光标会回到开头 FILE *Binfid; h_u32 framenum = 0; h_s32 frameformat = 0; char filename_last[256] = "output.txt"; void vs_printf_open(char filename[], int framenum1, int format) { int temp_str = 0; temp_str = strcmp(filename, filename_last); // strcmp返回的规律是什么? do { if (temp_str != 0) { Binfid = fopen(filename, "w+"); } else { Binfid = fopen(filename, "a+"); } } while (Binfid == NULL); // 为什么写成 do while??? if (Binfid == NULL) { printf("this is error!\r\n"); } framenum = framenum1; frameformat = format; memcpy(filename_last, filename, sizeof(char) * 256); // 保证每一帧切换时,是添加 }
经查找一些资料,并且亲自实验之后得出: r+:打开已存在的文件时,光标位于开头,文件可读,可写, 写数据时,由于光标位于开头,所以会覆盖原有数据 w+:打开的文件已存在时,将覆盖原文件 a+:打开已存在的文件时,光标位于文件尾,文件可读,可写 读数据时,光标会回到开头 FILE *Binfid; h_u32 framenum = 0; h_s32 frameformat = 0; char filename_last[256] = "output.txt"; void vs_printf_open(char filename[], int framenum1, int format) { int temp_str = 0; temp_str = strcmp(filename, filename_last); // strcmp返回的规律是什么? do { if (temp_str != 0) { Binfid = fopen(filename, "w+"); } else { Binfid = fopen(filename, "a+"); } } while (Binfid == NULL); // 为什么写成 do while??? if (Binfid == NULL) { printf("this is error!\r\n"); } framenum = framenum1; frameformat = format; memcpy(filename_last, filename, sizeof(char) * 256); // 保证每一帧切换时,是添加 }
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论