問題があります。年の日、月の日、月などを取得する必要があります。次のコードを使用します。
#include <stdio.h>
#include <time.h>
int main(void)
{
time_t liczba_sekund;
struct tm strukt;
time(&liczba_sekund);
localtime_r(&liczba_sekund, &strukt);
printf("today is %d day of year\nmonth is %d, month's day %d\n", strukt.tm_yday+1, strukt.tm_mon+1, strukt.tm_mday);
return 0;
}
最初に: gcc -std=c99 -pedantic -Wall がこの警告を返すのはなぜですか:
私の入力: gcc test_data.c -o test_data.out -std=c99 -pedantic -Wall
出力:
test_data.c: 関数 'main' 内:
test_data.c:11:3: 警告: 関数 'localtime_r' の暗黙の宣言 [-Wimplicit-function-declaration]
2 つ目: Windows で動作させるにはどうすればよいですか? Dev-C を使用してコンパイルしようとすると、次のようになりました: http://imgur.com/U7dyE
@@EDIT -------------------- あなたの現地時間の提案の例を見つけました:
#include <stdio.h>
#include <time.h>
int main ()
{
time_t time_raw_format;
struct tm * ptr_time;
time ( &time_raw_format );
ptr_time = localtime ( &time_raw_format );
printf ("Current local time and date: %s", asctime(ptr_time));
return 0;
}
これを次のような日付形式に変更するにはどうすればよいですか: 5.12.2012 または 5-12-2012? 年間通算日を取得する方法は?
このソリューションが Windows と Linux の両方で機能することを願っています。