C++笔记(《C++新经典》)

C++新经典

第1章 C/C++

1.1 C和C++语言的起源、特点、关系与讲解范畴

1.2 C/C++语言市场需求与就业需求分析

1.3 再谈C/C++就业

1.4 搭建开发语言环境

第2章 数据类型、运算符与表达式

2.1 常量、变量、整形、实型和字符型

2.1.1 创建最基本的C程序


2.1.2 C语言的数据类型

在这里插入图片描述
1.每种数据类型所占内存大小

2.每种数据的取值范围

2.1.3常量和变量

常量:字面值。
变量:值可以改变的量。
变量定义:类型名 变量名 [ = 变量初始值 ];
标识符:变量等等的取名。
保留字:系统保留的特殊用途的字。

2.1.4 整型数据

整数,包含所有进制。

2.1.5 实型数据

小数。

2.1.6 字符型数据

1.字符常量
‘a’ , ‘b’ ,‘1’
2.转义字符
‘\n’ ‘\’ ‘’’ …
3.字符变量
char c = ‘a’ ;

printf("c1=%c, c2=%c\n",c1,c2);
printf("c1=%d, c2=%d\n",c1,c2);

printf("%f",num);

知识点: ASCII

2.1.7 字符串常量

printf("hello world!");

/*
*	区分'a'   "a"
*	字符串结尾多出来一个转义字符'\0',作为结束符
*
*/

注:Ctrl+F5 调试
Ctrl+F9 断点
Ctrl+F10下一断点
Shift +F9 添加监视
Ctrl Alt M +1 调用内存1(调试-窗口-内存-内存1)

2.1.8 变量赋初值

定义变量之后才能使用,一般是要赋初值的,否则会出错。

2.1.9 数值型数据之间的混合运算

不同数值类型的数据一起运算的的时候,系统尝试将变量类型统一。
类型转换从:
char , short ---->int ----> unsigned ----> long ----> double <-----double <----float
范围:由小变大。(隐式转换)

2.2 算数运算符和表达式

2.2.1 C语言的运算符

算数运算符 + - * 、 %(取余)
关系运算 <, <=, ==,>, >=,!=
逻辑运算符 !, &&, ||
位运算符 <<, >>, ~, |, ^, &
赋值运算符 =
条件运算符 ? :
逗号运算符 ,
指针运算符 * , &
求占字节运算符 sizeof()
强制类型转换符 (类型名)
成员变量运算符 . , ->
下标运算符 []
其他 …

2.2.2 算术运算符和算数表达式

2.2.3 运算符优先级问题

在这里插入图片描述
P29

2.2.4 强制类型转换运算符

一般形式: (类型名)(表达式)

int a=1;
double b=(int) a;

总结:两种数据类型转换

  • 自动类型转换,类型范围由小到大。
  • 强制类型转换

都有精度损失或者溢出的风险。

2.25 自增和自减运算符

前++
后++
只适用于整型变量。

2.3 复制运算符和逗号运算符

2.3.1 赋值运算符和赋值表达式

第3章 程序的基本结构和语句

第4章 程序的基本结构和语句

第5章 循环控制

第6章 数组

第7章 函数

第8章 编译预处理

第9章 指针

第10章 结构体与公用体

第11章 位运算

第12章 文件

第13章 C++基本语言

13.6函数新特性、inline内联函数与const详解

13.6.1 函数回顾与后置返回类型

前置返回类型

int func( int a , int b);
int func( int a , int b)
{
   
	return a+b;
}

后置返回类型

auto func( int a, int b)->int ;
auto func( int a, int b)->int 
{
   
	return a+b;
}

提示:一般一个函数写个几十到几百行就行,别太多,难以阅读。

13.6.2 inline内联函数

将简短且常用的函数定义为内联函数,代码在编译时被编译器会自动替换函数为函数体。

  • 循环、分支、递归调用就不要使用内联修饰符。
  • 内联函数类似 宏展开 #define 和 constexpr
inline int myfunc()
{
   
	return 1;
}

13.6.3 函数特殊写法总结

  • 返回空
void func(int a, int b){
   
	a+b;
}
  • 返回 值
int func(int a, int b){
   
	return a+b;

-返回指针

int * func(int b)
{
   
	int a=b;
	return &a;//函数一结束a就被释放,巨大隐患。
}
  • 返回引用
int & func()
{
   
	int a=0;
	return a;//函数一结束a就被释放,巨大隐患。
}
  1. 采用形参返回
void func(int &a 
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值