編程小白C語言之跨平臺運行

題目要求

編寫一個C語言程序,讓它能暫停5秒以後,在輸出“hello,123”,並且要求跨平臺,在windows和Linux中都能運行

思路分析 

  • windows平臺下的暫停函數的原型是 Sleep(DWORD dwMillsecond),參數單位是“毫秒”,位於<windows.h>頭文件
  • Linux平臺暫停函數的原型是 unsigned int sleep (unsigned int seconds),參數的單位是“秒”,位於<unistd.h>頭文件
  • #if,#elif,#endif 就是預處理命令,它們都是在編譯之前由預處理程序來執行的

擼寫代碼 

#include<stdio.h>
#if _WIN32   //如果是windows平臺,就執行 #include<windows.h>
#include<windows.h>
#elif _linux_ //否則判斷是不是 _linux_,如果是Linux操作系統,就引入 #include<unistd.h>
#include<unistd.h>
#endif 
int main()
{
	//不同平臺下調用不同的函數 
	#if _WIN32       //識別windows平臺 
	Sleep(5000);     //毫秒 
	#elif _linux_    //識別Linux平臺 
	sleep(5);		 //秒 
	#endif
	puts("hello,123"); //輸出 
	return 0;
}

測試結果 

在windows中  等待程序開始

5秒之後

在Linux中

將file1重命名爲file1.c   (本人嘗試過了,不改名字等會報錯)

編譯(file3,file4.c,file5.c  是本人其他的代碼,大家不要詫異爲什麼我的沒有,本人用的Redhat7.0  gcc這個軟件包是自己裝的)

執行

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章