• 締切済み

勉強しています。力をかしてください。

#include <stdio.h> #include <string.h> #define MAX_NUMBER 999 /* 最大登録件数 */ #define NAME 20 /* 氏名の文字数 */ #define DATE 9 /* 生年月日の桁数 */ #define ID 4 /* IDの桁数 */ #define INT 8 /* 登録・修正日の桁数 */ typedef struct { /* 社員名簿 */ char ID[NUM]; /* 社員番号 */ char name[NAME]; /* 氏名 */ char birth[DATE]; /* 生年月日 */ int touroku; /* 登録日 */ }syain_data; このような構造体で、 001 abc 20000101 20070911 と、画面表示し、S_data.txtファイルに書き込むようにしようとおもうのですが、以下のところで悩んでます。教えてください。 /* 実行時の日付の表示 */ void put_data(void) { FILE *fp; time_t t; struct tm *local; time(&t); local = localtime(&t); fprintf(fp, "%2d%2d%2d%2d\n", local->tm_year + 1900, local->tm_mon + 1, local->tm_mday); 20070911←の表示のことですが、これをファイルに書き、構造体に書くにはどうすればいいのでしょうか?

みんなの回答

  • koko_u_
  • ベストアンサー率18% (459/2509)
回答No.1

ファイルへどのようなフォーマットで出力するつもりなのかがわからん。 構造体の方も int toroku フィールドがどのようなフォーマットで日付を保持しているのか不明。単純に tm_year * 10000 + tm_mon * 100 + tm_mday ? ついでに void put_data(void) は何の入出力もなしで役に立つのか? FILE* fp はどこから来るんだ?

hatenan114
質問者

お礼

すみません。 もう一度、質問の内容をまとめてから、質問いたします。

関連するQ&A