掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
年齢 (ID:52984)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
ん〜・・・これってVC++とは全く関係ない質問だと思うのですが・・・ まぁ、一応、サンプルあげます。このサンプルでは誕生日の文字列を受取って 年齢を返しますが、受け取りパラメータをint3つでやれば冒頭の文字列解析処理は 削れます。 #include <time.h> #include <stdio.h> #include <stdlib.h> #include <string.h> // birthday strings YYYY/MM/DD → int age int getAge(char *bd) { int i,fix,age; int ymd[3]; char wbuf[16]; char *tkn; struct tm ttime, *stime; time_t ntime,btime,dtime; strcpy(wbuf,(const char *)bd); i = fix = 0; tkn = strtok(wbuf,"/"); while (tkn != NULL){ ymd[i++] = atoi(tkn); tkn = strtok(NULL,"/"); } if(ymd[0] < 1970){ fix = 1970 - ymd[0]; ymd[0] = 1970; } ttime.tm_sec = 59; ttime.tm_min = 59; ttime.tm_hour = 23; ttime.tm_mday = ymd[2]; ttime.tm_mon = ymd[1] - 1; ttime.tm_year = ymd[0] - 1900; ttime.tm_isdst = 0; time(&ntime); btime = mktime(&ttime); dtime = (time_t)difftime(ntime,btime); stime = gmtime(&dtime); age = stime->tm_year - 70 + fix; return(age); }
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.