2011-03-26 29 views
1
#include <stdio.h> 

int main() 
{ 
    FILE * pFile; 
    int n; 
    char name [100]; 

    pFile = fopen ("myfile.txt", "w"); 
    for (n = 0; n < 3; n++) 
    { 
    puts ("please, enter a name: "); 
    gets (name); 
    fprintf (pFile, "Name %d [%-10.10s]\n", n, name); 
    } 
    fclose (pFile); 

    return 0; 
} 

此代码给我一个警告gcc说'获取是一个危险的函数使用'...有没有解决它的办法?获取相关问题

+0

这看起来不像Objective-C问题......您的意图是什么? – jtbandes 2011-03-26 07:47:51

+1

想一想:如果我输入一个长度超过100个字符的名字,会发生什么情况? – 2011-03-26 07:56:45

回答

3

是的,它是fgets。您调用替换到gets有:

fgets(name, 100, stdin) 

欲了解更多详细信息,请参阅该文档 - 两者是不完全一样的。