zoukankan      html  css  js  c++  java
  • 42 预处理命令

    1,  ①使用库函数之前,应该用#include 引入对应的头文件,这种以 # 好开头的命令称为预处理命令。

         ②这些在编译之前对源文件进行简单加工的过程,就称为预处理(即预先处理,提前处理)

      ③预处理主要是处理以 # 开头的命令,例如 #include<stdio.h>等,预处理命令要放在所有函数之外,而且一般都放在源文件的前面

      ④预处理是C语言的一个重要功能,由预处理程序完成,当对一个源文件进行编译时,系统将自动调用预处理程序对源程序中的预处理部分做处理,处理完毕自动进入对源程序的编译。

      ⑤C语言提供了多种预处理功能,如宏定义,文件包含,条件编译等,合理的使用它们会使编写的程序便于阅读,修改,移植和调试,也有利于模块化程序设计。

    2,开发一个C程序,让它暂停5秒以后再输入内容“hello  world” ,并且要求跨平台,在 windows 和 linux 下都能运行,如何处理。

      ①windows平台下的暂停函数的原型是 void Sleep (DWORD dwMilliseconds ) ,参数的单位是毫秒,位于 windows.h 头文件

      ② linux 平台下的暂停函数的原型是 unsigned int sleep(unsigned int seconds),参数的单位是秒,位于 unistd.h 头文件

      ③ #if   #elif  #endif  就是预处理命令,它们都是在编译之前由预处理程序来执行的。

     1 #if _WIN32  //如果是windows平台,就执行#include<windows.h>
     2 #include<windows.h>
     3 #elif _linux_  //否则判断是不是Linux,如果是就引入<unistd.h>
     4 #include<unistd.h>
     5 #endif
     6 void main() {
     7     #if _WIN32
     8         Sleep(5000);//毫秒
     9     #elif _linux_
    10         sleep(5);  //
    11     #endif
    12         puts("hello,world");
    13 }

       说明:在windows和 linux 下,生成源码不一样。

           在windows下:

          #include<windows.h>

          void main(){

            Sleep(5000);

            puts("hello,world") ;

          }

  • 相关阅读:
    CQD(陈丹琦)分治 & 整体二分——专题小结
    [联赛可能考到]图论相关算法——COGS——联赛试题预测
    C++ 线段树—模板&总结
    树形动态规划(树状DP)小结
    树形动态规划(树形DP)入门问题—初探 & 训练
    哈希表(散列表),Hash表漫谈
    随机系列生成算法(随机数生成)
    什么是动态规划算法,常见的动态规划问题分析与求解
    数学之美系列二十四 -- 谈谈动态规划与如何设计动态规划算法
    owasp zap 安全审计工具 功能详解
  • 原文地址:https://www.cnblogs.com/shanlu0000/p/12353117.html
Copyright © 2011-2022 走看看