char *file1charbuf=(char*)malloc(sizeof(char));
char *file2charbuf=(char*)malloc(sizeof(char));
在循环中直到 EOF 我将 char 读入*file1charbuf
然后*file2charbuf
比较。
...
check=read(file1, file1charbuf, 1);
check2=read(file2, file2charbuf, 1);
if (*file1charbuf!=*file2charbuf){
printf("differ: char %i, line %i\n",charpos,linepos);
exit(1);
}
....
比较工作正常,但我想将指针保留在堆栈中,而不是堆中。malloc 也是 C lib 函数。
char *file1charbuf[1]; //1 element array of char
char *file2charbuf[1];
与那个比较不起作用
...
if (file1charbuf[0]!=file2charbuf[0]){
printf("differ: char %i, line %i\n",charpos,linepos);
exit(1);
}
...
和第二个问题。close(file1)
如果exit(1)
发现有必要吗?
- 我应该只使用 sys 调用,而不是 lib 函数。