• 【C开发】预编译处理命令(#define、typedef、#include、#运算符)


    1、#define

    宏定义,在编译前由预处理器对代码作字符串的替换。宏定义不是语句,后面不加“;”。

    2、typedef

    typedef是在编译时处理的,在自己的作用域内给一个已经存在的类型一个别名

    3、例: typedef int * int_ptr;  与  #define int_ptr int * 

    作用都是用int_ptr代表 int * ,但是二者不同,正如前面所说 ,#define在预处理 时进行简单的替换,而typedef不是简单替换 ,而是采用如同定义变量的方法那样来声明一种类型。

    即相当于:

    #define int_ptr int * 
    int_ptr a, b; //相当于int *a, b; 只是简单的宏替换

    typedef int* int_ptr;
    int_ptr a, b; //a, b 都为指向int的指针, typedef为int* 引入了一个新的助记符

    4、#include “ ”与< >之间的区别

    “ ”  :是从用户当前目录寻找包含文件,若找不到就会到库函数所在目录中寻找,再找不到就报错。

    < >:是直接在库函数所在目录中寻找,找不到就报错。

    5、#运算符

    可以用来连接字符串。例:

    #include<stdio.h> 
    
    #define PR(n) printf(#n"=%d\n", n) 
    
    int main() 
    { 
        int a=3, b=4, c=5; 
        PR(a); 
        PR(b); 
        PR(c); 
        return 0; 
    } 

    运算结果:

    a=3

    b=4

    c=5

  • 相关阅读:
    float对内联元素和块元素的影响
    行内元素的困扰
    Nodejs同步和异步编程
    let、const、var的区别
    作用域
    SpringMVC
    MVC2新闻编译与发布
    JSP显示新闻
    servlet应用
    SWPU邮件登录界面的仿写(第二次作业)
  • 原文地址:https://www.cnblogs.com/75zzz/p/2865189.html
Copyright © 2020-2023  润新知