c++学习笔记一

1.基本介绍

1)是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。
2)是一种中级语言(综合高级和低级语言的特点)
3)是C 的超集

2.面向对象开发的四大特性

封装(Encapsulation)、继承(Inheritance)、多态(Polymorphism)、抽象(Abstraction)

3.三个重要部分组成

核心语言、C++ 标准库、标准模板库(STL)

4.本地环境设置

文本编辑器和 C++ 编译器
具体安装教程见https://www.runoob.com/cplusplus/cpp-environment-setup.html

5.基本语法

1)基本代码格式

#include <iostream>  //定义头文件,包含了程序中必需的或有用的信息
using namespace std;  //告诉编译器使用 std 命名空间
 
// main() 是程序开始执行的地方  该行为单行注释,以 // 开头,在行末结束
 
int main()   //主函数,程序从这里开始执行
{
   cout << "Hello World"; // 输出 Hello World  //会在屏幕上显示消息 "Hello World"
   return 0;   //终止 main( )函数,并向调用进程返回值 0
}

2)编译 & 执行 C++ 程序
a.在文本编辑器,添加上述代码,保存成xxx.cpp文件
b.打开命令提示符,进入到保存文件所在的目录
c.键入 'g++ hello.cpp ‘,输入回车,编译代码,没报错进入下一行,并生成 a.out 可执行文件
d.键入 ’ a.out’ 来运行程序,屏幕上会显示 ’ Hello World ’
3)分号 & 语句块
每个语句必须以分号结束。它表明一个逻辑实体的结束
语句块是一组使用大括号括起来的按逻辑连接的语句
C++ 不以行末作为结束符的标识,可以在一行上放置多个语句
4)标识符
以字母 A-Z 或 a-z 或下划线 _ 开始,后跟零个或多个字母、下划线和数字(0-9),不允许出现标点字符比如 @、& 和 %。区分大小写

6.数据类型

1)基本的内置类型
布尔型(bool)、字符型( char)、整型(int)、浮点型(float)、双浮点型(double)、无类型(void)、宽字符型(wchar_t)
2)typedef 声明

//写法:
typedef type newname; 
typedef int feet;
feet distance;

3)枚举类型
C++中的一种派生数据类型,由用户定义的若干枚举常量的集合

//书写形式:
enum 枚举名{
	标识符[=整型常数],
	标识符[=整型常数],
	...
	标识符[=整型常数]
} 枚举变量;
//如果枚举没有初始化, 即省掉"=整型常数"时, 则从第一个标识符开始,例如
enum color { red, green, blue } c;
c = blue;
//默认情况下,第一个名称的值为 0,第二个名称的值为 1,第三个名称的值为 2,以此类推.但是,也可以给名称赋予一个特殊的值,例如
enum color { red, green=5, blue };  //其中green 的值为 5,blue 的值为 6,默认情况下,每个名称都会比它前面一个名称大 1,但 red 的值依然为 0

7.类型转换

1)静态转换(Static Cast)
将一种数据类型的值强制转换为另一种数据类型的值
2)动态转换(Dynamic Cast)
将一个基类指针或引用转换为派生类指针或引用
3)常量转换(Const Cast)
将 const 类型的对象转换为非 const 类型的对象
4)重新解释转换(Reinterpret Cast)
将一个数据类型的值重新解释为另一个数据类型的值,通常用于在不同的数据类型之间进行转换

8.变量类型

//1.变量定义:
type variable_name = value;
//2变量声明   注意可以多次声明,但是只能定义一次
//例如:
// 函数声明
int func();

int main()
{
    // 函数调用
    int i = func();
}
 
// 函数定义
int func()
{
    return 0;
}
//3.C++ 中的左值(Lvalues)和右值(Rvalues)
左值:指向内存位置的表达式,可以出现在赋值号的左边或右边
右值:存储在内存中某些地址的数值,只能出现在赋值号的右边

9.变量作用域

局部作用域、全局作用域、块作用域、类作用域

10.常量

常量是固定值,在程序执行期间不会改变,又叫做字面量,可以是任何的基本数据类型,定义后不可修改。
1)整数常量
可以是十进制、八进制或十六进制的常量

语法:  前缀+数值+后缀
其中:前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,不带前缀则默认表示十进制
后缀是 U 和 L 的组合,U 表示无符号整数(unsigned),L 表示长整数(long),不区分大小写和顺序
例如:
85         // 十进制
0213       // 八进制 
0x4b       // 十六进制 
30         // 整数 
30u        // 无符号整数 
30l        // 长整数 
30ul       // 无符号长整数

2)浮点常量
由整数部分、小数点、小数部分和指数部分组成

3.14159       // 合法的 
314159E-5L    // 合法的 
510E          // 非法的:不完整的指数
210f          // 非法的:没有小数或指数
.e55          // 非法的:缺少整数或分数

3)布尔常量
true和false
4)字符常量
字符常量是括在单引号中,如果常量以 L(仅当大写时)开头,则表示它是一个宽字符常量(例如 L’x’),此时它必须存储在 wchar_t 类型的变量中。否则,它就是一个窄字符常量(例如 ‘x’),此时它可以存储在 char 类型的简单变量中
5)字符串常量
字符串字面值或常量是括在双引号 “” 中的

11.修饰符类型

修饰符是用于改变变量类型的行为的关键字

signed:表示变量可以存储负数。对于整型变量来说,signed 可以省略,因为整型变量默认为有符号类型。

unsigned:表示变量不能存储负数。对于整型变量来说,unsigned 可以将变量范围扩大一倍。

short:表示变量的范围比 int 更小。short int 可以缩写为 shortlong:表示变量的范围比 int 更大。long int 可以缩写为 longlong long:表示变量的范围比 long 更大。C++11 中新增的数据类型修饰符。

float:表示单精度浮点数。

double:表示双精度浮点数。

bool:表示布尔类型,只有 truefalse 两个值。

char:表示字符类型。

wchar_t:表示宽字符类型,可以存储 Unicode 字符。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值