• C++学习笔记(一)


    一、语法学习

    1、定义了一套算数类型(arithmetic type)和空类型(void)的基本数据类型

    (1)算数类型:分两类整形(integral type,包括字符(char),整形(int),布尔(bool))和浮点类型(float),类型的尺寸根据机器的不同,长度也有所不同。

    除去布尔类型和扩展的字符类型意外,其他证书类型可以划分为带符号的(signed)和无符号的(unsigned)的两种。带符号的可以标识正数,负数,0,无符号的只能表示大于等于0的值。
    与其他整数类型不同,字符型被分为了三种:char,signed char和unsigned char。字符类型表现形式只能表现两种:带符号的和不带符号的,char和signed char不同,char只能表示两种类型的一种,具体有编译器决定。
    注意:1、执行浮点计算尽量用double,因为float精度不够,单精度和双精度计算代价相差不多。

    (2)空类型:不对应具体的值

    2、声明与定义的区别

    声明和定义都规定了变量的类型和名称,但是定义还申请了存储空间,也可能会为变量赋予一个初始值。

    extern int i; //声明了i而非定义了i
    int j; //声明并定义了j

     变量能且只能定义一次,但是可以被多次声明

    3、变量标识符定义规范

    C++标识符由字符、数字和下划线组成,必须以字母和下划线开头,对大小写敏感。定义的标识符不能够同时连续出现两个下划线,也不能下划线紧跟大写字母开头。定义在函数体外的标识符不能以下划线开头。

    4、数组

    int *(&arr)[10] = prts; // arr是数组的引用,该数组有10个指针

    想要理解数组声明的含义,最好的方法是从数组的名字开始按照由内向外的顺序阅读。
    首先知道arr是一个引用,然后观察右边知道arr引用的对象是一个大小为10的数组,最后观察左边知道,数组的元素类型是指向int的指针。

    数组除了固定大小以外,其他用法和vector基本类似。

    unsigned scores[11] = {};  //11个分数段,全部初始化0
    unsigned grade;
    while (cin >> grade) {
      if(grade <= 100) {
         ++scores[grade/10]; //将当前分数段计数值加一
      }  
    }

    --指针和数组

    使用数组的时候,编译器一般会把它转换成指针。
    指针指向数组第一个元素例子

    string nums[] = {"first", "second", "third"};
    string *p = &nums[0];  // p指向nums的第一个元素
    //string *p2 = nums; 等价于 p2 = &nums[0];

    由上面可以推断出使用数组作为auto变量的初始值,得到的类型是指针而非数组。

  • 相关阅读:
    原来发布到主页是发布到博客园的主页啊,还真不知道
    sysobjects
    blend3破解文件,直接覆盖安装目录源文件即可。
    Microsoft Sql中char和varchar的区别与联系
    SQL脚本创建数据表,并给出主键,外键,唯一键,约束
    asp.net调试方法
    VS2010安装项目的系统必备中添加.NET 2.0
    c#,自定义安装,部署,创建自定义操作,自定义操作,安装验证,数据库,安装授权码,接收输入,判断
    Ext2.2系列(50篇)
    C# 获取24小时制的当前系统时间
  • 原文地址:https://www.cnblogs.com/hifelix/p/5924771.html
Copyright © 2020-2023  润新知