C++ Primer Plus 学习笔记之第三章 处理数据

来源:互联网 发布:xbox 360知乎 编辑:程序博客网 时间:2024/04/29 09:34

第三章 处理数据

1.命名规则
(1) 名称中只能使用字母字符、数字和下划线(_)
(2) 名称的第一个字符不能是数字
(3) 区分大写字符与小写字符
(4) 不能将C++关键字用作名称
(5) 以两个下划线或下划线和大写字母打头的名称被保留给实现使用,以一个下划线开头的名称被保留给实现,用作全局标识符

2.以16进制或8进制输出

cout<<hex; //告诉cout采取何种行为 ,输出16进制cout<<"waist="<<waist<<endl;cout<<oct;//输出8进制cout<<"instem="<<inseam<<endl;

3.后缀为UL或LU


22033UL或22033LU 代表存储为unsigned long
后缀为ull,就是unsigned long long

‘M’字符用单引号
“money”字符串用双引号

4.wchar_t 宽字节


wchar_t bob = L'P';wcout << L"tall" <<endl; //可以输出tall

5.const限定符


const限定符 :修改变量声明和初始化,类似于C语言中的#define

const int Months = 12

6.cout.setf()


cout.setf() 定点表示法,防止程序把较大的值切换为E表示法,并使程序显示到小数点后6位,参数 ios_base::fixed和ios_base::floatfield是通过包含iostream来提供的常量。

7.类型转换

(1) 初始化和赋值进行的转换

#include <iostream>using namespace std;int main(){cout.setf(ios_base::fixed,ios_base::floatfield);float tree=3;//int 转换成 floatint guess{3.9832};//double 转换成 int//丢弃小数部分,变成3.int debt=7.2E12;//int 变量debt无法存储3.0E12.cout<<"tree="<<tree<<endl;cout<<"guess"<<guess<<endl;cout<<"debt="<<debt<<endl;return 0;}


(2) 表达式中的转换

整型提升:在计算表达式时,C++将bool、char、unsigned char、signed char和short值转换为int。
eg:
short chicken=20;short ducks=35;short fowl=chickens+ducks;/*将chicken和duck转换为int型相加之后的结果转换成short型然后赋值给fowl。*/



       图1:C++11 版本 表达式中的转换校验表


(3) 强制类型转换

(long)thorn //将thorn转换成long类型 ,C语言格式long(thorn) // C++格式

注:强制类型转换不会修改thorn变量本身,而是创建一个新的、指定类型的值,可以在表达式中使用这个值。

static_cast<long> (thorn)//更加严格的强制类型转换

8.C++11 中的auto声明
初始化中,若不指定变量的类型,编译器将把变量的类型设置成与初始值相同:
anto n=100;//n is intanto x=1.5;//x is double



0 0
原创粉丝点击