小编xxF*_*hxx的帖子

用fgets()替换gets()

我一直在测试这个结构,我收到有关使用的警告gets.有人提到要使用fgets而是替换结尾'\0'.任何建议我如何更改我的代码来做到这一点?

void regCars(Car reg[], int *pNrOfCars) {
    char again[WORDLENGTH] = "yes", model[WORDLENGTH], tmp[WORDLENGTH];
    int year, milage;

    while (strcmp(again, "yes") == 0) {
        printf("Enter model:");
        gets(model);
        printf("Enter Year:");
        gets(tmp);
        year = atoi(tmp);
        printf("Enter milage:");
        gets(tmp);
        milage = atoi(tmp);
        reg[*pNrOfCars] = createCar(model, year, milage); 
        (*pNrOfCars)++;
        printf("Continue? (yes/no)");
        gets(again);
    }
}
Run Code Online (Sandbox Code Playgroud)

c gets fgets

7
推荐指数
1
解决办法
663
查看次数

标签 统计

c ×1

fgets ×1

gets ×1