如何在C中打开文件进行读取?
在C编程中,当我处理从文件读取时,有一件事让我头疼 我不理解这两种方法之间的区别:如何在C中打开文件进行读取?,c,gcc,C,Gcc,在C编程中,当我处理从文件读取时,有一件事让我头疼 我不理解这两种方法之间的区别: FILE *fd; fd=fopen(name,"r"); // "r" for reading from file, "w" for writing to file //"a" to edit the file 如果文件无法打开,fd返回NULL,对吗 我使用的第二种方法是: int fd; fd=open(name,O_RDONLY); 如果在打开文件时发生
FILE *fd;
fd=fopen(name,"r"); // "r" for reading from file, "w" for writing to file
//"a" to edit the file
如果文件无法打开,fd返回NULL,对吗
我使用的第二种方法是:
int fd;
fd=open(name,O_RDONLY);
如果在打开文件时发生错误,fd将为-1
有人能给我解释一下吗?
提前感谢:)使用fopen()可以使用C stdio库,这比直接使用文件描述符方便得多。例如,没有与fprintf(…)具有文件描述符的内置等价物
除非您需要进行低级别的I/O,否则stdio函数可以很好地服务于绝大多数应用程序。它更方便,而且,在正常情况下,正确使用时速度也一样快。所以我应该使用我更喜欢的,对吗?那就是了。我想那是个好办法。是的,它在出错时返回NULL。如果失败,您可以检查errno以找出原因。