C++入门2——标准库概览&类型和指针

摘自《C++程序设计语言》


【问题】

  • 为什么频繁地使用引用,而不是指针或者对象本身
  • 为什么很多类似于string::const_iterator的语言?这是什么作用?

  • 字符串string:字符串连接(+)、字符串比较(=)
  • 输入输出:cin、cout
  • 容器
    • vector:类似于数组,可以通过[ ]下标访问
    • list:一般通过遍历的方式访问
    • map:键值对

bool类型

  • 在算术和逻辑表达式里,bool都将被转换为int
  • 指针也可以隐式地转换为int,非零指针为TRUE,零值的指针将转换为false

char

  • 一切char都是8位,且都可以转换为int型
  • char是signed还是unsigned由实现决定
  • signed char的范围为-128~127,unsigned char的范围为0~255
  • 注:为什么可以到-128——原码—>反码(正数的原码即为反码,负数的反码为原码除符号位的部分取反,为了解决1+(-1)= -2的问题,但是出现了1+(-1)= -0的问题)—>补码(正数不变,负数为反码+1,解决-0的问题)
  • 问题:为什么char a = -128,printf(a)时输出的不是-0,而是-128?

int

  • 一切int皆为有符号类型
  • int有short,int,long三种类型
  • int有十进制、八进制、二进制三种表现形式。10 = 012 = 0xa

大小

  • C++中类型的大小是依赖与实现的,所以不能准确给出int是多大这样的定义
  • sizeof方法用char的大小的倍数来表示对象的大小。eg:sizeof(char)= 1

void

  • 函数无返回值:void f()
  • 指向类型不明的对象的指针:void *f

enum枚举

  • enum enumName { factor1,factor2,factor3 }
  • 枚举符的值默认从0开始递增,但可以显示地通过factor=num指定枚举符的值,且这个值不能超过2^k - 1或者(-2k,2k - 1)
  • 每一个factor被称为枚举符,每个枚举符都是enumName类型的

声明

  • 待阅
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 指针是C语言中广泛使用的一种数据类型。 运用指针编程是C语言最主要的风格之一。利用指针变量可以表示各种数据结构; ...
    朱森阅读 3,533评论 3 44
  • void* 类型指针:通用变体类型指针;可以不经转换,赋给其他指针,函数指针除外;malloc返回的就是void*...
    冰吉凌阅读 3,419评论 0 18
  • 一、框架 1、Mac系统及常用工具、进制;C数据类型、常量变量、运算符、表达式、格式化输入输出 2、关系运算符、逻...
    师景福阅读 765评论 0 2
  • 2017.9.7 周四 鲅鱼圈 过去的一周可谓是惊心动魄。本打算详细写一下关于ICO的东西,可icoinfo上的项...
    崔阳明阅读 944评论 2 4
  • 接下来发生的内容,有点让老虎困惑。 首先,屁股还没有坐稳的老虎就被爹爹塞进了外城区商业街。 “帮我拿一点。”爹爹直...
    Mod模君阅读 440评论 0 1