C++启蒙笔记(一)---编程语言通用部分

一、环境搭建

1.1 Windows环境

  • VS code 安装
    • 下载vscode:进入下载界面
    • 安装插件:C++和Chinese language pack 两个扩展包
    • 保存cpp后缀文件:新建文件,测试
  • Visual Stadio 2019安装
    • 下载vs2019:进入下载界面
    • 新建项目:控制台应用
    • 调试:F5

1.2 Linux环境(CentOS 8)

  • 制作Make文件:略

  • 生成可执行文件

    • 方法一:
      • 直接生成默认可执行文件a.out:g++ hello.cpp
    • 方法二:
      • 生成目标文件(中间文件)hello.o:g++ -c hello.cpp
      • 生成可执行文件hello.exe :g++ hello.cpp -o hello.exe
  • 运行文件(要有x权限):./hello.exe

二、数据类型初识

  • 编译:就是把高级语言变成计算机可以识别的二进制语言
  • 分离式编译机制:C++语言支持将程序分割为多个文件,每个文件独立编译,最后用链接器链接成一个整体程序
  • 声明
    • 声明方式
      • 引用式声明:简称”声明“,还未分配内存空间,不进行初始化,因为其为引用了已定义的变量的声明的写法,写法:extern int n;
      • 定义式声明:简称”定义“,分配内存空间,进行初始化,写法:int n;
    • 特点:在每个文件中,变量都必须先定义再使用,变量可以声明多次,但只可定义一次
    • 功能:明确变量名字和类型,编译时通过其进行内存分配、变量初始值设置

  • 初始化:赋初值,显式int n = 3 ;extern int n = 3;(这也是定义),隐式static int n;
  • 赋值:给变量赋值,仅针对定义过的变量,写法n = 3;

2.1 整型—int

  • 整形赋值
    // 方法1:
    // 定义
    int c_int;			
    // 赋值
    c_int = 100;			
    	
    // 方法2:
    // 声明、定义、赋值同时
    int c_int = 100;		
    

2.2 字符串—string

  • 字符串赋值
    #include <string>
    // 定义、初始化
    string c_str = "/root/bin/";
    

2.3 浮点型—double

  • 浮点型赋值
    // 定义、初始化
    double c_double = 3.1415926;
    

2.4 布尔型—bool

  • 布尔型赋值
    // 定义、初始化
    // 非0为true,0为false
    bool is_ready = true;
    

三、输入输出及运算符

3.1 常规输入输出

  • 键盘输入
    // 回车键:结束输入
    // 空格:输入分隔符,用于一次输入多个变量值
    cin >> 变量名; 									
    
  • 终端输出
    // endl为换行符,常用操作
    cout << 'the value is' << ran_num << endl;	
    //“\n”也为换行符,适用于字符串
    cout << 'the value is' << ran_num << "\n";		
    >>>the value is 4
    
  • 递增(减)运算符(i++、i–)
    // 先初始化j,后i
    int i = j = 1;					
    // i先使用,再自增1				
    int x = i++;									
    // 输出x的值为:1
    cout << x << endl;								
    // 输出i的值为:2
    cout << i << endl;			
    					
    // 功能:j先自增加1,再使用
    int y = ++j;									
    // 输出y的值为:2
    cout << y << endl;								
    // 输出j的值为:2
    cout << j << endl;								
    

3.2 常用操作符

  • 算数符号:+、-、*、/(相除取整数截取)、%(相除取余数)
  • 组合赋值运算符:+=、-=、*=、/=、%=
  • 逻辑运算符:&&(且)、||(或)、!(非)
  • 比较运算符:>、<、=、!=

四、逻辑语句

4.1 判断语句

  • if-else语句
    // 注意:if(x=3),相当于判断if(3)
    // 区别于:if(x==3)
    if(判断语句) 			
    // 单条语句可不用大括号		
    {		
    	// 大括号只与>=2条语句的语句块配合使用						
    	语句块;						
    }
    else
    {
    	语句块;
    }
    
  • if-else if语句
    if(判断语句)
    {								
    	语句块;						
    }
    else if(判断语句)
    {
    	语句块;
    }
    else
    {
    	语句块;
    }
    
  • 三目操作符
    // 判断式?表达式1:表达式2
    // 若判断式为真,执行1,否则执行2
    x < 0 ? y = 10 : z = 20;		
    // 三目赋值:将三目运算结果给变量a初始化
    int a = x < 0 ? 10 : 20;		
    

4.2 循环语句

  • while语句
    // 条件为true,继续进行循环体
    while(判断语句)			
    // 单条语句可不用大括号				
    {								
    	语句块;
    }
    
  • do-while语句
    do
    // 单条语句可不用大括号
    {								
    	语句块;
    // 条件为true,继续进行循环体
    }while(判断语句)					
    
  • for语句
    // i的初始值为0;每次循环i加一;i最大值为10
    for(int i = 0; i<=10; i++)	
    // 单条语句可不用大括号	
    {								
    	语句块;
    }
    

4.3 选择语句

  • switch语句
    // 一个整型或枚举类型
    switch(变量)					
    {
     	// 例如:199、'a'(字符,内部以整形存储)
     	case 子项值:					
     		语句;
     		break;
     	default:
     		语句;
    }
    

break:跳出最内层循环
continue:跳出本次循环,进行下次循环

五、程序主语句

  • 代码示例
    /* #include ,预处理语句,在文件被编译之前,添加或删除文本,
    <iostream>,输入输出流,有此语句,才可调用cin和cout函数 */
    #include<iostream>		
    // 使用类std的命名空间,否则cout调用应写为std::cout
    using namespace std;			
    
    // 全局区:声明或定义全局变量、常量、类、函数
    // extern前缀类声明:用于在文件间共享的数据
    					
    // int表示程序对操作系统的返回值,0为正常退出
    // main为程序主函数名称
    int main()						
    {				
    	// 局部变量区:定义局部变量		
    	// 若为static前缀定义的变量,为本文件内,函数间共享的数据	
    	int c_num;					
    	
    	// 定义和程序其他部分建议用空行隔开
    	
    	// 函数语句区(其中定义的变量也是局部变量)
    	// 输出							
    	cout << '请输入一个整数:';	
    	// 输入,同时赋值
    	cin >> c_num;
    	cout << '输入的整数为:' << c_num << endl;	
    	// return语句可不写,默认为此语句
    	return 0;					
    }
    

    调用全局变量:::全局变量名,显式调用全局变量,因为局部变量若与全局变量同名,则会暂时覆盖全局变量,直到释放局部变量,此方法直接调用全局变量,无视覆盖

下一篇:C++启蒙笔记(二)—数据类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值