- 论坛徽章:
- 0
|
这是源程序
#include <stdlib.h>
2 #include <string.h>
3 #include <stdio.h>
4
5 int onerror(int in, char *str);
6 int main() {
7 int i=0;
8 int buf[4096];
9 for (i; i < sizeof(buf)/sizeof(int); i++) {
10 buf = i;
11 // printf("%d\t", buf);
12 }
13 FILE * fileout;
14 fileout = fopen("digest.test", "w");
15 int result = fwrite(buf, sizeof(int),sizeof(buf)/sizeof(int), fileout);
16 onerror(result, "fwrite");
17 fclose(fileout);
18
19 return 0;
20
21 }
22
23 int onerror(int in, char * str) {
if(in == -1 || in == 0){
25 printf("%s is error\n", str);
26 exit(1);
27 }
28 return 0;
29 }
可是打开文件却不是我想要的1-4095 的数字,是一群乱码,请问linux文件是以什么形式存储的?网上说linux没有字符型文件和二进制文件的区别,而是当作流,请问这是怎么回事?如果我想得到我想要的结果,应该怎么改亚? 谢谢 |
|