#include <stdio.h>
int main (int argc, const char * argv[])
{
FILE *fp;
fp=fopen("/Users/--------/Desktop/C.txt", "w");
putc("C", "/Users/-------/Desktop/C.txt");
fclose(fp);
}
这是我将字母“C”写入文本文件C.txt的简单代码。每次写入时都会收到错误代码EXC_BAD_ACCESS。什么事情发生了?
答案 0 :(得分:5)
不应该使用putc
的方式。尝试:
putc('C', fp);
putc
看起来像这样:
int putc(int c, FILE *stream);
您正在传递char *
而不是FILE *
。
答案 1 :(得分:1)
尝试以下方法:
putc('C', fp);
putc期望其第二个参数为FILE*
,而不是文件的路径。
第一个参数也应该是char,而不是像你的例子中的char *。
答案 2 :(得分:0)
你应该写信给文件:
putc('C', fp);
此外,您应该检查fopen
是否未返回NULL