我想在文件中写一个字符数组char array="some text"
,这是在C
中写这个的最简单方法。实际上我正在编写一个设备驱动程序,所以我必须用C语言编写代码从用户空间我必须从用户空间读取一个字符数组,并在内核空间中写一个字符数组,但我是C的新手,这就是我问这个问题的原因。
答案 0 :(得分:6)
// Char arrays are declared like so:
char array[] = "YOUR TEXT HERE";
// Open a file for writing.
// (This will replace any existing file. Use "w+" for appending)
FILE *file = fopen("filename", "w");
int results = fputs(array, file);
if (results == EOF) {
// Failed to write do error code here.
}
fclose(file);
编辑:
有fputs
向后的论点。
fputs
不返回写入的字节数。只是一个错误代码。
答案 1 :(得分:1)
FILE * file = fopen("/path/of/file","w+");
int return_val = fputs(array,file);
if (return_val >= o )
printf("Success");
else
printf("failed");
答案 2 :(得分:1)
让我们在一条线上完成所有工作!
struct FILE* fopen(const char*, const char*); int fprintf(struct FILE*, const char*, ...); int main(int argc, char** argv) { return !fprintf(fopen("/path/to/file", "w+"), "some text");}
我发誓要$ DEITY,我在这里的文本框中写了这个,把它复制到一个文件中,然后用gcc -Wall
编译。它是第一次正确构建并正确运行。知道我通常是多么邋,,这是惊人的。