zoukankan      html  css  js  c++  java
  • C数据类型的定义声明

    1.简单变量

    选择需要的类型(char,int,float,double等);使用有效字符给变量取名;按以此格式声明:类型说明符 变量名;  

    int a;            //声明一个整形变量a
    
    unsigned short a;     //类型符由一个或多个关键字组成
    
    int a, b, c;         //可同时声明多整个变量,用逗号隔开
    
    int a = 1,b = 2;      //声明的同时可以初始化变量
    
    char a = 'a';        //初始化字符常量
    
    float a = 7.77e7      //初始化浮点型常量 

    2.指针

    int *ptr;                 //定义一个指向整型的指针
    
    const int *ptr; int const *ptr;   //定义一个指向常量的指针
    
    int *const ptr;             //定义一个指向整型的指针常量
    
    const int * const ptr;         //定义一个指向常量的指针常量
    int **a;              //定义一个指向指针的指针,指向的指针指向一个整形数
    
    int  (*ptr)[5];          //定义一个指向数组的指针,该数组有5个整形数
    
    int *(*a)[10];          //定义一个指向数组的指针,该数组有5个整形指针
    
     int (*ptr) ();          //定义一个指向函数的指针,该函数无形参,返回值为int型
    
    struct a * ptr;         //声明一个结构体指针,可以指向任意a类型的结构

    3.数组

    char a[12];            //内含12个char类型元素的数组
    
    float a[8];            //内含8个float类型元素的数组
    
    int a[7] = {1,3,5,8,5};     //声明并初始化数组,该数组有7个int类型元素,编译器将剩余2个元素初始化为0
    
    int a[ ] = {2,3,5,7,9,5};    //可省略方框内数字,编译器自动匹配数组大小和初始化列表中的项数
    
    int *a[5];             // 内含5个指针的数组 ,指针指向int类型

    4.函数

    void aaaa(int num, char ch)    //函数头格式     返回值类型  函数名 (形参列表)
    
    int *a();               //指针函数        无形参数 返回int类型的指针

    5.结构

    声明和定义

    struct team {        //关键字 struct 后跟一个可选标记 team  (若非多次使用 可不带标记)
    
    char  season[];       //每个结构体成员自己的声明来描述
    
    int grade;
    
    float kda;
    
    };              //右花括号的分号为声明所必须,表示结构定义结束;右花括号可跟变更名,同时完成声明结构和定义结构变量的过程       
    struct team SN;       //把 SN 声明为一个使用 team 结构布局的结构变量
    
    struct team TES, DWG;   //声明两个使用 team 结构布局的结构变量,TES和DWG
    struct team  JDG = {     //初始化结构变量与初始化数组类似 
    
    "S10",
    
    8,
    
    15.6
    
     };

    结构嵌套

    struct teams {               //第一个结构
    
    char first[LEN];
    
    char four[LEN];
    
    };    
    
    struct lol {                   //第二个结构
    
    char teams World_Championship;  //嵌套结构
    
    char season[LEN];    
    
    };    
        
    struct lol lpl = {             //初始化结构变量
      {"TES","LGD"},
       "S10"
    };   

    6.联合

    创建联合与创建结构相同,也需要联合模板和联合变量。

    union hold {       //带标记的联合模板
    int digdit;
    double bingfl;
    char letter;
    };
    
    union hold fit;         //hold类型的联合变量
    union hold save[10];    //内含10个联合变量的数组
    union hold *            //指向hold类型的指针

    7.枚举

     enum常量为int类型

    enum spectrum{red,orange,yellow,blue};    //声明以spectrum为标识符的枚举类型,括号的标识符枚举了spectrum变量可能的值
    enum spectrum color;             //声明一个类型名为enum spectrum的变量 color

    8.typedef

    typedef没有创建新类型,只是为已存在的类型起一个简单的别名

    typedef unsigned char uint8;        //为现有类型创建别名
    typedef char Line[81];    //掩饰数组
    Line text,line;
        
    等同于
    char line[81];           
    char text[81];                
    typedef char* pstr;      //修饰指针
    int mystrcmp(const pstr p1,const pstr p3);   // 形参为两个指向char的常量指针    
    typedef struct Student    //typedef 修饰结构体类型
        {
        int a;
        }Stu;
    
    Stu stu1;                //声明结构体类型 Stu==struct Student

    typedef百科:https://baike.baidu.com/item/typedef

    9.宏定义

    #define预处理器指令 ,完成字符串的简单替换

    #define TWO 2              //由  #define指令+选定的缩写(宏)+ 替换体
    #define LOL “League Of Legends”   // 长度仅限一行  反斜杠  可以把定义延续至下一行
    #define MAX(X,Y) ((x)>(Y)?(X):(Y))    //简单函数 可改为带参数宏   定义中包含表达式,必须使用括号

    如何判断定义的类型: https://blog.csdn.net/qq_41727218/article/details/79733724

  • 相关阅读:
    VS2013 更新系统.net framework4.8引起的datagridview添加列弹框的显示问题
    IIS发布获取apk文件,部署IIS遇到的问题记录
    C# winform 动态构建fastreport报表
    其他信息: 未能加载文件或程序集“WebGrease, Version=1.5.1.25624, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。找 到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)
    winform DataGridView的虚模式填充,CellValueNeeded事件的触发条件
    winform中的小技巧【自用】
    仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'XXX'中的标识列指定显式值。
    VS 2013Ultimate 开发过程中遇到的问题——listbox的隐藏问题,combobox.textchanged的中文问题
    AFO
    几个救了我命的小不等式
  • 原文地址:https://www.cnblogs.com/Gimiracle/p/13915786.html
Copyright © 2011-2022 走看看