開檔讀資料 請務必指定 mode
FILE *fp ,*fp2;
char buf;
fp = (FILE*)fopen( argv[1] , "r" );
fp2 = (FILE*)fopen( argv[2] , "w" );
while( !feof( fp ) ){
fread( &buf , 1, 1 , fp );
fwrite( &buf , 1, 1 ,fp2 );
}
fclose( fp );
fclose( fp2);
以上程式 若是讀圖檔(binary) 在 unix 下可以正常地複製一張圖出來
但在 Windows XP with SP2 上 無論是 Dev-C++ 還是 VC 6 都會出錯
修正的方式:
FILE *fp ,*fp2;
char buf;
fp = (FILE*)fopen( argv[1] , "rb" );
fp2 = (FILE*)fopen( argv[2] , "wb" );
while( !feof( fp ) ){
fread( &buf , 1, 1 , fp );
fwrite( &buf , 1, 1 ,fp2 );
}
fclose( fp );
fclose( fp2);
結論:
不要偷懶 :p
沒有留言:
張貼留言