main()

成都創(chuàng)新互聯(lián)公司專注于天峻網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供天峻營銷型網(wǎng)站建設(shè),天峻網(wǎng)站制作、天峻網(wǎng)頁設(shè)計、天峻網(wǎng)站官網(wǎng)定制、微信平臺小程序開發(fā)服務(wù),打造天峻網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供天峻網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
{
FILE * stream;
int i;
stream = fopen("/tmp/fwrite","r");
fread(s,sizeof(struct test),nmemb,stream);
fclose(stream);
for(i=0;inmemb;i++)
printf("name[%d]=%-20s:size[%d]=%d/n",i,s[i].name,i,s[i].size);
}
供參考
#include stdio.h
#include stdlib.h
//PRINTBIT 用于把一無符號整數(shù)翻譯成二進(jìn)制串
void PRINTBIT(unsigned int number)
{
unsigned int i;
unsigned int ckecker=1;//ckecker 用于指示由右至左的位數(shù),初置設(shè)為 1
ckecker=8-1;//將 ckecker 中非零位移到其機(jī)器表示的最左邊
//下一語句從左至右打印各位,每四位之間留一空隔
for (i=1;i=8;i++)
{
//打印 ckecker 非零位所對應(yīng)的 number 中對應(yīng)位
putchar((number ckecker)?'1':'0');
if (i%4==0)//每4位用空格隔開
putchar(' ');
ckecker=1; //準(zhǔn)備打印 number 中的下一位
}
putchar('\n');
}
int main(void)
{
FILE *fp;
char *filename = "in1.dat";
char ch;
if((fp=fopen(filename,"rb"))== NULL )
{
printf("Can not open %s!\n",filename);
exit(0);
}
printf("原字符\t二進(jìn)制\n");
ch=fgetc(fp);//取字符
while(!feof(fp))
{
putchar(ch);
putchar('\t');
PRINTBIT(ch);
ch=fgetc(fp);
}
fclose(fp);
return 0;
}
你怎么輸出的?
二進(jìn)制如果以文本輸出,自然會有很多亂碼。
你可以用"%x"格式輸出看看
char
a;
a=fgetc(fp1);
printf("%c",
a);/*這樣肯定有亂碼*/
printf("%x",
a);/*這樣就是16進(jìn)制*/
分享標(biāo)題:c語言二進(jìn)制文件讀取函數(shù) c語言如何讀取二進(jìn)制文件
網(wǎng)站鏈接:http://www.chinadenli.net/article30/ddoehso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、全網(wǎng)營銷推廣、服務(wù)器托管、建站公司、軟件開發(fā)、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)