为以下函数添加注释bool opencsv2(FILE* Ep) { FILE* fp1 = fopen("routes.csv", "r"); if (!fp1) { printf("error1!"); return 0; } int i = 0; routes route[MAXX] = { 0 }; route[i].cStartCity[64] = { 0 }; route[i].cEndCity[64] = { 0 }; char ch = fgetc(fp1); while (!feof(fp1)) { while (ch != ',') { route[i].cStartCity[64] += ch; ch = fgetc(fp1); } ch = fgetc(fp1); while (ch != ',') { route[i].cEndCity[64] += ch; ch = fgetc(fp1); } while (ch != ',') { route[i].cTripMode[64] += ch; ch = fgetc(fp1); } fscanf(fp1, "%f,", &route[i].dTime); fscanf(fp1, "%f,", &route[i].dCost); } return 1; }
时间: 2024-01-05 17:02:06 浏览: 28
/**
* @brief 从指定文件中读取路线信息并存储到数组中
*
* @param Ep 指向待写入的文件的指针
* @return 成功返回1,否则返回0
*/
bool opencsv2(FILE* Ep) {
FILE* fp1 = fopen("routes.csv", "r"); // 打开路线文件
if (!fp1) { // 如果打开失败
printf("error1!");
return 0; // 返回错误
}
int i = 0; // 初始化路线数组下标
routes route[MAXX] = { 0 }; // 定义路线数组
route[i].cStartCity[64] = { 0 }; // 初始化起始城市字符串
route[i].cEndCity[64] = { 0 }; // 初始化终点城市字符串
char ch = fgetc(fp1); // 获取文件中的一个字符
while (!feof(fp1)) { // 当文件没有结束时
while (ch != ',') { // 当字符不是逗号时
route[i].cStartCity[64] += ch; // 将字符加入起始城市字符串中
ch = fgetc(fp1); // 获取下一个字符
}
ch = fgetc(fp1); // 跳过逗号
while (ch != ',') { // 当字符不是逗号时
route[i].cEndCity[64] += ch; // 将字符加入终点城市字符串中
ch = fgetc(fp1); // 获取下一个字符
}
while (ch != ',') { // 当字符不是逗号时
route[i].cTripMode[64] += ch; // 将字符加入旅行方式字符串中
ch = fgetc(fp1); // 获取下一个字符
}
fscanf(fp1, "%f,", &route[i].dTime); // 读取时间信息
fscanf(fp1, "%f,", &route[i].dCost); // 读取费用信息
}
return 1; // 返回成功
}