第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么類型被強化以后,我總是改不對了?

為什么類型被強化以后,我總是改不對了?

C
泛舟湖上清波郎朗 2023-03-17 18:14:12
我是個C語言初學者,請教各位C高手,關(guān)于localtime_s()和asctime_s()的問題。在visual studio 6.0里面,可以直接用localtime()把時間變量轉(zhuǎn)換成結(jié)構(gòu)體,然后再用 asctime()把這個結(jié)構(gòu)體轉(zhuǎn)換成ASCII碼,然后可以用于顯示。比如:#include <stdio.h>#include <time.h>void get_time(void);int main(){get_time();return 0;}void get_time(void){time_t now;time(&now);printf("Current time is: %s\n",asctime(localtime(&now)));}這個程序可以顯示當前時間。但是在visual studio .net 2005里面,有很多涉及到安全性的問題,很多函數(shù)都有變化,比如strcpy()就變成strcpy_s(),而且參數(shù)也多了一個。現(xiàn)在的問題是,localtime()變成了localtime_s(),asctime()變成了asctime_s(),而且函數(shù)的參數(shù)也變了。我看了help的講解,但是還是用不對這兩個函數(shù)。請各位C高手給予指點,給我講講新老格式的區(qū)別,并且將我上面的程序用localtime_s()和asctime_s()改寫一下。萬分感謝。懇請各位C高手指導我這個菜鳥一下。
查看完整描述

2 回答

?
呼喚遠方

TA貢獻1856條經(jīng)驗 獲得超11個贊

#include <stdio.h>
#include <time.h>

#define TIME_MAX 32

void get_time(void);

int main()
{
get_time();
getchar();
return 0;
}

void get_time(void)
{
time_t now;
time(&now);

// 定義兩個變量,存儲轉(zhuǎn)換結(jié)果
struct tm tmTmp;
char stTmp[TIME_MAX];

// 轉(zhuǎn)換為tm結(jié)構(gòu)
localtime_s(&tmTmp,&now);

// 轉(zhuǎn)換為字符串并輸出
asctime_s(stTmp,&tmTmp);
printf("Current time is: %s\n",stTmp);
}

查看完整回答
反對 回復 2023-03-21
?
慕田峪7331174

TA貢獻1828條經(jīng)驗 獲得超13個贊

1、localtime函數(shù):
原型:struct tm * localtime(const time_t * clock);
功能:把從1970-1-1零點零分到當前時間系統(tǒng)所偏移的秒數(shù)時間轉(zhuǎn)換為本地時間, 其中clock為秒數(shù)時間;
返回值:返回一個tm結(jié)構(gòu)體的指針。tm結(jié)構(gòu)體是time.h中定義的用于分別存儲時間的各個量(年月日等)的結(jié)構(gòu)體。
2、asctime函數(shù):
原型:char* asctime (const struct tm * timeptr);
功能:把timeptr指向的tm結(jié)構(gòu)體中儲存的時間轉(zhuǎn)換為字符串;
返回值:一個固定格式的字符串。字符串格式為:Www Mmm dd hh:mm:ss yyyy。其中Www為星期,Mmm為月份,dd為日,hh為時,mm為分,ss為秒,yyyy為年份;
3、例程:


#include<time.h>#include<stdio.h>int main(){    time_t rawtime;    struct tm * timeinfo;    time(&rawtime);    timeinfo = localtime(&rawtime);//使用localtime函數(shù)把秒數(shù)時間rawtime轉(zhuǎn)換為本地時間以tm結(jié)構(gòu)體保存,并把tm結(jié)構(gòu)體地址儲存到timeinfo當中    printf("當前日期為: %s",asctime(timeinfo));//使用asctime函數(shù)把tm結(jié)構(gòu)體中儲存的時間轉(zhuǎn)換為字符串,并輸出    return 0;}


查看完整回答
反對 回復 2023-03-21
  • 2 回答
  • 0 關(guān)注
  • 113 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號