美文网首页
C/C++数据类型

C/C++数据类型

作者: LogyKoala | 来源:发表于2019-07-22 00:00 被阅读0次
  1. 基本数据类型

    • 整型
      • 长整型(long int或者long)占位符%ld
      • 整型(int)占位符%d
      • 短整型(short int)占位符%x
    • 浮点型
      • 单精度(float)占位符%f
      • 双精度 (double 类似long float)占位符%lf
      • 长双精度(long double)
    • 字符型(char)占位符 %c
    • 布尔型(bool)
  2. 构造类型

    • 枚举类型(enum)

       //定义:枚举类型为int类型 按照顺序来
      //好处:限定了值,保证取值的安全性
      enum MessageType{
          Text,Image,File,Video =20
      };
      
      //使用
      enum MessageType message =Image;
      
       //定义 匿名
      enum{
          Text,Image,File,Video =20
      } message;
      
      //使用
      message =Image;
      
    • 数组类型

      • 由类型名、标识符、维数,组成的复合型数据类型
      1. 一维数组
        1. 定义 :类型名 标识符[维数]
        int a[2];
        int b[]={1,2,3};
        
        1. 引用数组中的元素:标识符[维数]
          a[0];//数组中的第0个元素
        
        1. 初始化
        int b[]={1,2,3};
        b[0] =1;
        
    • 结构体类型(struct):是一种构造数据类型

      1. 定义
        // 第一种定义
        struct Users{
            int age;
            char name[10];
        }
        //使用1
        //初始化,在构造中初始化
        struct Users u ={18,  "name"};
        u.name;
        u.age;
        //使用2
        //成员赋值,进行初始化
        struct Users u;
        u.age =10;
        strcpy(u.name,"name");
        
        //第二种定义
        struct Users{
            int age;
            char name[10];
        } u={18,"name"};
        //直接使用
        u.name;
        u.age;
        
        //第三种定义
        struct Users{
            int age;
            char name[10];
        } u;
        //使用
        u.name =100;
        strcpy(u.name,"name");
        
        //第四种定义-结构体嵌套
        struct Order{
            int count;
        }
        struct Users{
            int age;
            char name[10];
            Order order;
        }
        //或者
        struct Users{
            int age;
            char name[10];
           struct Order{
                int count;
            } order;
        }
        //初始化与使用
        Users users ={12,"张三",{99}};
        users.age;
        user.name;
        user.order.count;
        
        //第五种定义-匿名结构体:定义的同时至少有一个声明的变量,否则没有意义
        //好处:可以控制结构体变量的数量(只有u这一个变量),一定程度上避免出现结构体重名现象
        struct{
            int age;
            double height;
        } u;
        //使用
        u.age =100;
        u.height=167;
        
        //结构体与数组
        struct Users{
            int age;
            char name[10];
        }u1[2],u2[2]={{10,"张三"},{20,"李四"}};
        //使用
        u2[0];
        //赋值
        u1[0].age=10;
        
      2. 用途
        把不同的数据类型整合起来,成为一个自定义的数据类型
      3. typedef 给结构体取别名
      struct Users{
          int age;
          double height;
      }
      // 取别名
      typedef struct Users TypedefUsers;
      //  使用
      TypedefUsers users;
      users.age =18;
      users.height =180;
      
    • 共用体类型/联合体(union)

      1. 作用
        使多个不同类型的变量共用一块内存区域。联合体变量任何时候只有一个成员变量在内存中存在。(节约内存)
      2. 规律
        联合体分配内存大小=最大成员所占的内存字节数(基本数据类型)
      3. 定义与使用
        // 定义
        union Student{
            int id;
            char name[10];
        };
        //初始化
        union Student stu;
        stu.id =100;
        strcpy(stu.name,"张三");
        //使用
        stu.id;
        
      4. 取别名
        typedef union Users{
            int age;
        }TypedefUsers;
        // 使用
        TypedefUsers users;
        users.age =10;
        
    • 类类型(class)

      1. 字符串类string
        1. 定义: string 变量名; 或者 string 变量名1,变量名2;
        2. 赋值
          string initStr() {
              //std:: 拿到string的命名空间 
              std::string word = "then";//string可以用字符串常量赋值
              word[2] = 'a';//也可以对某个字符进行操作
              return word;//  执行结果 word的执行结果为"than"
          }
          
          或者
          using namespace std;//定义命名空间
          string initStr() {
              string word = "then";//string可以用字符串常量赋值
              word[2] = 'a';//也可以对某个字符进行操作
              return word;//  执行结果 word的执行结果为"than"
          }
          
        3. 字符串运算
          赋值(复制 =)
          void changeStr(){
              string as;
              string word="word";
              as =word;
          }
          
          链接(+)
          using namespace std;
          void changeStr(){
              string as;
              string word="word";
              as =word;
          }
          
          比较(关系运算符)
          挨个比较字符,和字符串长度无关
        4. 字符串数组
          string  a[] ={"123","456"};
          a[0];
          
  3. 引用类型

  4. 指针类型

  5. 空类型

相关文章

  • C++和Python的混合编程-C++数据类型的导出和调用

    视频教程:C++数据类型的导出和调用(上)C++数据类型的导出和调用(下)C++数据类型的导出的补充 boost:...

  • Arduino 数据类型转换

    使用过Python的数据类型后,会发现C/C++的数据类型比较单一。Arduino实际上是C++,除了基础数据类型...

  • c++入门(上)

    C++是在C语言基础上的一个延伸,c室c++的一个子集,新增了数据类型、命名空间等内容 C++的基础 新的数据类型...

  • C++基本概念复习_2018-06-25

    C++基础 (1)C和C++的区别 C++分为: C部分(区块、语句、预处理器、内置数据类型、数组、指针等); 面...

  • #C++ Primer Plus# 第三章 处理数据

    面向对象编程(OOP)的本质:设计并扩展自己的数据类型 内置C++数据类型C++数据类型 标识存储的数据的方法:使...

  • 2020徐州C++初级班,开启探索计算机科学之路

    课程内容: 1、C++输入输出机制; 2、C++基本数据类型; 3、C++运算符和表达式; 4、C++顺序结构; ...

  • c++笔记1

    1.数据类型 黑色的是c和c++共有的数据类型,红色的是c++独有的数据类型。 2.基本类型数据的内存长度和数值范...

  • C#与c++对应的类型

    //C#调用C++的DLL搜集整理的所有数据类型转换方式-转载//c++:HANDLE(void *) ---- ...

  • C++变量的存储类别

    参考:C++(存储类)经典!! C++存储类(菜鸟教程) C++变量属性 一个变量除了数据类型以外,还有3种属性:...

  • C++学习大纲

    交流728483370,一起学习加油! C++ 基本数据类型和表达 C++ 无条件转移控制 C++ 子程序间的数据...

网友评论

      本文标题:C/C++数据类型

      本文链接:https://www.haomeiwen.com/subject/hlbhhctx.html