C語(yǔ)言system 自動(dòng)關(guān)機(jī)函數(shù)代碼
ime_t t; time(&t);
函數(shù)名稱: time
函數(shù)原型: time_t time(time_t *timer)
函數(shù)功能: 得到機(jī)器的日歷時(shí)間或者設(shè)置日歷時(shí)間
函數(shù)返回: 機(jī)器日歷時(shí)間
參數(shù)說明: timer=NULL時(shí)得到機(jī)器日歷時(shí)間,timer=時(shí)間數(shù)值時(shí),用于設(shè)置日歷時(shí)間,time_t是一個(gè)long類型
所屬文件: <time.h>
#include <time.h>
#include <stdio.h>
#include <dos.h>
int main()
{
time_t t;
t=time();
printf('The number of seconds since January 1,1970 is %ld',t);
return 0;
}
Sleep函數(shù)
簡(jiǎn)介:
Sleep函數(shù),用于暫停程序的執(zhí)行過程,使用時(shí)要帶上頭文件#include <windows.h>!
注意:
Sleep中的第一個(gè)英文字符為大寫的'S'!!如果是小寫會(huì)導(dǎo)致編譯錯(cuò)誤!!
Sleep函數(shù)的一般形式:
Sleep(nusidned long);
其中,Sleep()里面的單位,是以毫秒為單位,所以如果想讓函數(shù)滯留1秒的話,應(yīng)該是Sleep(1000);
VOID_cdeal Sleep(nusidned long);
'nusidned long'可以是變量,也可以是整型!但一定要是無符號(hào)的??!既沒有“-”號(hào)!
例:
#include<windows.h> //頭文件
#include <stdio.h>
int main()
{
int a;
a=1000;
Sleep(a);
printf('%d',a);
}
SYSTEMTIME結(jié)構(gòu)定義如下:
SYSTEMTIME STRUCT
{ WORD wYear; 年
WORD wMonth;月
WORD wDayOfWeek;星期,0=星期日,1=星期一...
WORD wDay;日
WORD wHour;時(shí)
WORD wMinute;分
WORD wSecond;秒
WORD wMilliseconds;毫秒
};(SYSTEMTIME ENDS)
結(jié)構(gòu)中的字段全為word類型,而Win32程序中用的往往是dword型變量,所以在使用這些數(shù)據(jù)之前往往要先把它們轉(zhuǎn)換為dword類型,用movzx指令就可以實(shí)現(xiàn)。
與獲取系統(tǒng)時(shí)間的函數(shù)相對(duì)應(yīng),可以用下面的兩個(gè)函數(shù)設(shè)置系統(tǒng)時(shí)間:
invoke GetLocalTime(SystemTime st);獲取本地時(shí)間
invoke GetSystemTime(SystemTime lt)獲取格林威治標(biāo)準(zhǔn)時(shí)間
#include <stdlib.h>
int main( )
{
system('shutdown -f -s -t 3600'); //3600秒后關(guān)機(jī)
}
定時(shí)關(guān)機(jī)程序是一個(gè)簡(jiǎn)單的小程序,核心部分的設(shè)計(jì)思想無非就是:1.設(shè)置關(guān)機(jī)時(shí)間→2.設(shè)置定時(shí)器,捕獲系統(tǒng)當(dāng)前時(shí)間與關(guān)機(jī)時(shí)間對(duì)比→3.當(dāng)系統(tǒng)當(dāng)前時(shí)間與設(shè)定的關(guān)機(jī)時(shí)間相等時(shí)調(diào)用關(guān)機(jī)函數(shù)關(guān)閉系統(tǒng)。大多數(shù)的定時(shí)關(guān)機(jī)程序第一步和第二步都沒什么區(qū)別,大同小異,因此,這里我也不浪費(fèi)時(shí)間“唐僧”了。我們來討論一下第三步。不知道大家在寫關(guān)機(jī)程序時(shí)是采用哪個(gè)函數(shù)來關(guān)閉系統(tǒng)的?ExitWindows、ExitWindowsEx還是InitiateSystemShutdown?這幾個(gè)函數(shù)都是要先取得管理員特權(quán)才能關(guān)機(jī),貌似有點(diǎn)麻煩。那么,有沒有別的簡(jiǎn)單直接點(diǎn)的函數(shù)可以用呢?有,那就是強(qiáng)大的system函數(shù)。這個(gè)函數(shù)在頭文件stdlib.h中聲明,主要作用是在命令行輸入系統(tǒng)命令。在寫命令行程序時(shí)我們知道,用system('pause')可以讓程序暫停執(zhí)行,用system('ping www.163.com')可以ping網(wǎng)易的服務(wù)器,用system('systeminfo')可以查看系統(tǒng)詳細(xì)配置信息,用system('ipconfig')可以查看本地主機(jī)的IP地址信息…… 調(diào)用system就如同我們直接在命令行手動(dòng)輸入系統(tǒng)命令一樣。那么,命令行關(guān)機(jī)命令大家清除吧?——shutdown,對(duì)就是它。接下來該怎么做應(yīng)該很了然了吧?在你的程序中添加諸如system('shutdown -s -t 10')這樣的一句代碼就OK了。是不是比用ExitWindows之類要簡(jiǎn)單快捷得多呢?
相關(guān)文章
win10環(huán)境下vscode Linux C++開發(fā)代碼自動(dòng)提示配置(基于WSL)
這篇文章主要介紹了win10環(huán)境下vscode Linux C++開發(fā)代碼自動(dòng)提示配置(基于WSL),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
詳解C++編程中的輸入輸相關(guān)的類和對(duì)象
這篇文章主要介紹了詳解C++編程中的輸入輸相關(guān)的類和對(duì)象,是C++入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-09-09
C++連接mysql的方法(直接調(diào)用C-API)
首先安裝mysql,點(diǎn)完全安裝,才能在在安裝目錄include找到相應(yīng)的頭文件,注意,是完全安裝,需要的朋友可以參考下2017-06-06
C語(yǔ)言簡(jiǎn)單實(shí)現(xiàn)三子棋游戲
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言簡(jiǎn)單實(shí)現(xiàn)三子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
C語(yǔ)言實(shí)現(xiàn)猜數(shù)字小游戲的示例代碼
猜數(shù)字小游戲是我們小時(shí)候喜歡我們一個(gè)經(jīng)典小游戲。本文將用C語(yǔ)言實(shí)現(xiàn)這一經(jīng)典游戲,文中的示例代碼講解詳細(xì),感興趣的可以了解一下2022-08-08
C語(yǔ)言修煉之路初識(shí)指針陰陽(yáng)竅?地址還歸大道真下篇
指針是指向另一個(gè)變量的變量。意思是一個(gè)指針保存的是另一個(gè)變量的內(nèi)存地址。換句話說,指針保存的并不是普通意義上的數(shù)值,而是另一個(gè)變量的地址值。一個(gè)指針保存了另一個(gè)變量的地址值,就說這個(gè)指針“指向”了那個(gè)變量2022-02-02
c/c++拷貝構(gòu)造函數(shù)和關(guān)鍵字explicit詳解
這篇文章主要介紹了c/c++拷貝構(gòu)造函數(shù)和關(guān)鍵字explicit的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-08-08
C語(yǔ)言如何利用輾轉(zhuǎn)相除法求最大公約數(shù)
這篇文章主要介紹了C語(yǔ)言如何利用輾轉(zhuǎn)相除法求最大公約數(shù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08

