アプリ版:「スタンプのみでお礼する」機能のリリースについて

西暦の日付を出力したいです。
年と月だけで良いです。
例えば、Oct 2004

教えてください!
お願いします。

A 回答 (3件)

#1さんの方法に加えて、strftime()を使用するという手もあります。


手順としては、
 1.、2.(#1さんと同じ)
 3.結果格納用のchar配列を用意する
 4.strftime( 3.で用意した配列名, ←の領域長, "%b %Y", 2.で作成したtm構造体 )
 5.結果を出力する
となります。

個人的には、一目で「時間→文字列処理をやっている」とわかるこちらのほうをお勧めします。

参考URL:http://www.linux.or.jp/JM/html/LDP_man-pages/man …
    • good
    • 0
この回答へのお礼

助かりました。
どうも、ありがとうございます。

お礼日時:2004/10/05 18:13

ソースファイルの頭で


#include <time.h>
を追加して、

関数で
time_t ltm;
struct tm *now;
と変数宣言し、

time(&ltm);
now=localtime(&ltm);
を実行すれば
now->tm_yearに「西暦-1900」、
now->tm_monに0~11の「月ー1」
が取得できます。
形式に拘らなければ
localtimeの代わりにctimeを使うという手もあり。
ANSI互換だからどの環境でもいけるかと思うのですが。
    • good
    • 0
この回答へのお礼

助かりました、
どうもありがとうございます。

ポイントは二人しかないので、
ごめんなさい。

お礼日時:2004/10/05 18:14

質問文が簡潔すぎて処理条件と目的が読み取れないので以下の仕様と仮定します。



・今日の西暦年と月名を取得する
・コンソールへ出力する
・言語はANSIーC 9899

まず月の名前をデータとして配列に作っときましょう。
char month[][] =
"Jan", "Feb", "Mar",
"Apr", "May", "Jun",
"Jul", "Aug", "Sep",
"Oct", "Nov", "Dec"} ;

1.time()関数で現在時刻を取得
2.1で取得した現在時刻をlocaltime()関数でtm構造体に変換
3.tmのメンバー変数tm_yearを年として表示
4.tmのメンバー変数tm_monを添え字としてmonth[][]を参照し、月名を表示

参考URLは時間関連標準関数の仕様です。

参考URL:http://www.linux.or.jp/JM/html/LDP_man-pages/man …
    • good
    • 0
この回答へのお礼

助かりました、
どうもありがとうございます。

お礼日時:2004/10/05 18:15

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!