zoukankan      html  css  js  c++  java
  • C语言中typedef的解释_2

    typedef工具是一个高级数据特性。利用typedef可以为某一类型自定义一个新的名称。这样可以提高程序的可读性可移植性,向用户表明特定用途。

    typedef没有创建任何新的类型,它只是为某个已存在的类型增加了一个方便使用的标签。

    typedef通常用于给复杂的类型命名。---->增强了可读性

    typedef来命名一个结构类型时,可以省略该结构的标签(标记)。

    typedef和#define有一些功能上的重合,但是还是有区别的:

      如果:typedef char * STRING;

      则 STRING name, sign; 会被编译器解释成:char * name, * sign;  //意为两个指针;

      但是,如果这样假设: #define STRING char *

      然后声明如下: STRING name,sign;

      就会被翻译成: char *name, sign   //以为一个名为name的char类型指针,一个名为sign的char类型变量;

    所以我们可以看到#define的本质,只是在预编译的时候进行字面的替换。

     

    习惯上,typedef一般用全大写,这样可以告诉用户,这是typedef;

     

    关于typedef的作用范围:

    例如:typedef unsigned char BYTE;

    该定义的作用范围取决于typedef定义所在的位置。如果定义在函数中,就具有局部作用域;

    如果定义在函数外,就具有文件作用域。

     

    最后总结:

    C语言通过结构、联合、typedef,提供了有效处理数据的工具,和处理可移植数据的工具。

  • 相关阅读:
    webpack常用插件及作用
    函数柯里化
    防抖和节流
    实现深拷贝
    实现new操作符
    关于js中断ajax请求
    从输入 URL 到页面加载完成,发生了什么?
    vue路由传参params和query的区别
    input输入框限制(座机,手机号码)
    判断当前页面是不是用户正在浏览的页面
  • 原文地址:https://www.cnblogs.com/grooovvve/p/9956913.html
Copyright © 2011-2022 走看看