質問: 生年月日は数値か、文字列か。 C言語で構造体を勉強していて疑問に思ったのですが、以下のデータはそれぞれ整数型で扱いますか?それとも文字型の配列にしますか?
回答: 個人的には、数値にするだろうと思います。 エクセルのLEFT/MID/RIGHT関数に相当する関数が C言語には用意されていないので、 生年月日を年・月・日に分けたい場合、文字列だとちょっと手間です。 (関数を自作する必要があります) 数値にしておけば、/ と % を使って、 年・月・日を簡単に取り出せます。 #include int main(void) { int date = 20200803, year, month, day; year = date / 10000; month = date / 100 % 100; day = date % 100; printf("%d年%02d月%02d日\n", year, month, day); return 0; } ↓ 2020年08月03日