首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

fwrite同fread的有关问题,

2012-03-23 
fwrite同fread的问题,急为什么每次写入的时候,都会先把原有内容重复写一次,然后才追加上新添加的内容。例如

fwrite同fread的问题,急
为什么每次写入的时候,都会先把原有内容重复写一次,然后才追加上新添加的内容。
例如,原先是         変更成功1
运行程序后就是     変更成功1
                                変更成功1
                                変更成功
这是为什么阿?代码如下。(如果把读文件那一句去掉就没有问题了,为什么阿)


        fp   =   fopen( "/tmp/Ryuu/input/text ",   "a+ ");
        stat( "/tmp/Ryuu/input/text ",   &stbuf);
        size   =   stbuf.st_size;

        buf   =   (unsigned   char   *)malloc((size_t)size);
        printf( "%d\n ",   size);
        fread(buf,   sizeof(char),   size,   fp);
        free(buf);

        memset(henkou,   0x00,   sizeof(henkou));
        strcpy(   henkou,   "変更成功\n ");
        printf( "入力内容   =   %s   \n ",   henkou);

        fwrite(henkou,   sizeof(char),   10,   fp);

        fflush(fp);
        fclose(fp);

[解决办法]
fwrite(henkou, sizeof(char), 10, fp);
fflush(fp);
————————————————————
fflush(fp);
fwrite(henkou, sizeof(char), 10, fp);

热点排行