C++ primer plus笔记整理 03

1.#include < climits >

引入这个头文件可以查看系统支持的字符集的情况,因为其中包含了一些信息如:#define INT_MAX 2147483647…..等等,这个表示int类型的最大表示范围是-2147483648 ~~ 2147483647 的总共2^32个数。

2.C++一些特殊的初始化方法

int wrens(123);
//这样的初始化唯一需要注意的是与函数区分,万一你有一个函数名和这个变量名字相同,而且还是接受int型参数....

也可以如下初始化:

int wrens{123};
int wrens2 = {123};
//这显得正经一点,不会和函数混淆
//但这是C++11中提出的新的做法,在g++下编译时要加上 -std=c++11或 -std=gnu++11,否则会给你warning

3.浮点数的表示方法

这一点我之前写过一片关于浮点型在计算机中存储的方法,可以参考那篇文章:
http://blog.csdn.net/tingyun_say/article/details/51417495

这里我们讨论C++对于浮点数的一些规定:
float:至少32位
double:至少48位
long double:80,96或128位

浮点数在计算机中是分成三部分的:符号位+阶码位+有效数字位
以32位float为例子就是:符号1位:0/1 + 阶码位8位:-127~128 + 有效数字位23位:2^23
所以float能表示的数的范围就是-(2^128) ~~ 2^128,又因为科学表示法总是1.xxxx,后面的xxxx有效数字用2^23中的数来表示,总共能精确到7位。也就是精确到7位的-(2^128) ~~ 2^128 中的数。
总结:
所以说要表示很大或者很小的数,就使用浮点型,因为是以指数来计算的。比如超过int型大小的数,像1000000000000000000000就可以这样赋值,float temp = 1000000000000000000000.0,输出它的话就是:1e+21

浮点数的优点:
        1.可以表示整数之间的值
        2.可以表示的范围大的多
       缺点:
        1.运算速度比整数慢,并且精度将降低

4.数组相关

这里知识点比较多,一个个说。
1.未初始化的数组,其值为以前驻留在该内存单元中的值。
所以一般使用数组的时候,最好先进行一次清空,memset函数,自行man帮助。
2.注意双引号和单引号的使用

char var = "s";
//这样的赋值语句是错误的
//1.首先"s"是一个有效字符为s,占位符为'\0'的字符串,而var只是表示一个单字符
//2.其次"s"由于C++中数组自动隐式转换的特点,它表示的是指向第一个元素的指针了,也就是它表示的是第一个元素的地址了

//应该这么使用
char* var = "str";
cout<<*var<<endl;

//我们可以对其进行取地址*,得到的是第一个元素
//输出:s

3.两个常用的数组相关函数
sizeof() — 返回整个数组的长度
strlen() — 返回存储在数组中的(有效)字符串长度,除去’\0’

char ptr[4] = "str";

cout<<sizeof(ptr)<<endl;
cout<<strlen(ptr)<<endl;

//输出:
//4
//3

有什么错误还请指出,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值