所以我想创建一个名为genData.c的文件,例如执行时:./ genData filename.txt会将1个字符写入该文件1000次.
实质上是创建1kb文件.我希望能够修改for循环,比如100000次,生成1MB文件等等.
这是我尝试过的,它编译但是在执行时会导致分段错误.
有什么建议?对不起C是我从未涉足过的语言.
#include <stdio.h>
int main (int argc, char *argv) {
char ch = 'A';
FILE *fp;
fp = fopen(argv[1], "wb");
int i;
for (i = 0; i < 1000; i++) {
fwrite(&ch, sizeof(char), 1, fp);
}
fclose(fp);
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我正在用 C 编写我自己的小外壳,或者至少我今天要开始。我想实现三个功能。
remove file1
为此我需要哪些系统调用?只需打开文件并删除其内容,或者除了使用之外是否还有删除文件的系统调用rm
?
mycopy source destination
为此,我正在考虑让一个缓冲区并打开 file1 读入缓冲区并写出到 file2 但我不知道如何将它实际放入代码中,如果有人可以将一个小例子放在一起,这对很多人有帮助。
move source destination
这只是实现复制和删除吗?
我的主要问题是使用 argv[] 参数我从来没有这样做过,所以它对我来说是新的。