當前位置:編程學習大全網 - 編程語言 - 編程輸出時間

編程輸出時間

結構的大小不能簡單地認為是構件的疊加...!!!

所以妳的fprintf ("%d ")並不是說存儲在文本中的數據占了四個字節,而是以10打印出來,可能是1個字節,也可能是5個字節。您的fprintf("%s ")實際上是24+1字節。但是,結構中的組織數據需要對齊..temp2[25]占用28字節的內存。因為它是32位機器,所以數據通常以四個字節對齊...對於壹個字節也是如此...自己看看size of(結構石堅)的大小。....

fprintf(“% 4d”)

fprintf("%28s ")

使用格式輸出,保證10十進制數的字符串占4個字節,本次的字符串占28個字節。

這樣,文本的數據被組織得和結構壹樣大。..

調試時,查看已經讀出了多少字節...fread,妳可以把單位設置成1,這樣妳就可以看到自己已經讀出了多少字節。fread會幫妳做,當然妳看不到細節。...

# include & ltstdio.h & gt

# include & lttime.h & gt

# include & ltstring.h & gt

int main(int argc,char *argv[])

{

time _ t time 1;

結構石堅

{

int數;

char time 2[25];

};

FILE * fp = NULL

if ((fp=fopen("1.txt "," a+")= = NULL)

{

printf("打不開!");

return-1;

}

結構石堅石堅[200];

int I = 1;

int rc

while(I = = 1 & amp;& amprc & lt10000)//rc超過10000,程序又會出錯...只給出了四位。

{

rc=fread(石堅,sizeof(結構石堅),200,FP);

//fflush(FP);

石堅->;數量= RC+1;

//石堅-& gt;數字= I;

//I = RC;

時間(& amptime 1);

strcpy(石堅-& gt;時間2,ctime(& amp;time 1));

printf("%d %s\n ",石堅-& gt;號,石堅-& gt;time p2);

//fwrite(q-& gt;number,sizeof(q-& gt;數),1,FP);

//fflush(FP);

fprintf(fp," %4d ",石堅-& gt;號);fflush(FP);

fprintf(fp," %28s ",石堅-& gt;time p2);fflush(FP);

// fwrite(石堅-& gt;時間2,sizeof(石堅-& gt;timep2),1,FP);

倒帶(FP);

睡眠(3);

// fseek(fp,0,SEEK _ SET);

//(石堅-& gt;數)++;

}

fclose(FP);

返回0;

}

  • 上一篇:大膽小夫妻7萬打造現代簡約風格“好色”家居
  • 下一篇:求助優秀團支部的申報材料,越詳細越好,越有文采越好,謝謝各位
  • copyright 2024編程學習大全網