当前位置: 首页 > news >正文

深蓝学院C++基础笔记 第 1 章 C++初探

第 1 章 C++初探

1.从Hello World 谈起

Hello World:

#include <iostream>
int mian()
{
std::cout << "Hello World!" << std::endl;
}
  • 函数: 一段能被反复调用的代码,可以接收输入,进行处理并(或)产生输出-返回类型:表示了函数返回结果的类型,可以为void
  • 函数名: 用于函数调用
  • 形参列表: 表示函数接收的参数类型,可以为空,可以为void ,可以无形参
  • 函数体:具体的执行逻辑
  • main 函数: 特殊的函数,作为整个程序的入口
  • 返回类型:为int ,表示程序的返回值,通常使用О来表示正常返回-形参列表可以为空

可以使用echo $查看返回值
一般返回0表示运行成功

int mian(int argc, char* argv[]) //约定俗成的写法

类型:无差别的序列,为一段空间赋予实际意义
语句
注释:可以两种结合灵活使用

  • 行注释// :注释//之后的内容
  • 块注释 /* */:注释中间内容

2.系统I/O

A 、头文件:
需要加入头文件#include

  • < ...> 从环境变量的路径找,用于已有的库文件
  • “ ”从当前目录开始查找,用于自定义头文件

iostream :标准库所提供的IO接口,用于和用户的交互:
-输入流:cin ;
-输出流:cout/cerr/clog :打印出的一样,但是重定向到文件中就不一样了

输出流之间的区别:输出目标后是否立即刷新缓冲区
cerr:立即刷新
clog: 非立即刷新
cout: 非立即刷新
缓冲区和缓冲区刷新:std::flush; std::endl;

B、命名空间: 用于防止名字冲突

  • std 名字命名空间
  • using namespace …: 后面的代码都会使用该命名空间
  • 访问名字空间中元素的3种方式:
    域解析符::;
    using 语句;
    名字空间别名
  • 名字空间与名称改编 name mangling,在目标文件中一般会对函数、遍历名字改编
    在这里插入图片描述

3.猜数字与控制流

程序的三大控制流:顺序、选择、循环

A、if 选择语句:用于分支选择

  • 条件部分:用于判断是否执行
  • 语句部分:要执行的操作

    ps:
    1、赋值语句将会返回所赋值的值,如果if()中是赋值将会返回true
    2、 在判断if()中的值是否相等的时候,建议将不可改变的右值放在等于号(==)左边
    3、左值的简单理解:可以放在等于号左边被赋值的变量
    4、防止( == )出错可以把等号左边放右值,或者左边的值定义为const 常量

B、while 语句:用于循环执行
条件部分:用于判断是否执行语句部分:要执行的操作
在这里插入图片描述

4.结构体与自定义数据类型

结构体:将相关的数据放置在一起,不剥离数据之间的关系。

  • 可以通过点操作符(.)访问内部元素可以作为函数的输入参数或返回类型
  • 可以引入成员函数,更好地表示函数与数据的相关性

struct
{

}

在这里插入图片描述

http://www.lryc.cn/news/90871.html

相关文章:

  • 【配电网重构】基于混合整数二阶锥配电网重构研究(Matlab代码实现)
  • Kubernetes mysql 实战以及外部存储处理 [一]
  • 使用【Python+Appium】实现自动化测试
  • 位图和布隆过滤器
  • Eclipse 教程Ⅳ
  • Webpack搭建本地服务器
  • 基于Go开发PaaS平台3
  • 虎牙直播在微服务改造的实践总结
  • 设置线程池的大小
  • Vue3 除了 keep-alive,还有哪些实现页面缓存的方法
  • JavaScript闭包
  • 华为OD机试之不含101的整数(Java源码)
  • SpringCloud Ribbon 学习
  • 预告:XuperOS Global 国际化进展
  • 炫技操作--递归实现翻转链表(java)
  • 华为OD机试真题 Java 实现【求最小公倍数】【牛客练习题】
  • [java]两数之和 II - 输入有序数组
  • Linux-0.11 boot目录head.s详解
  • 离散数学_十章-图 ( 3 ):由旧图构造新图
  • Golang每日一练(leetDay0083) 汇总区间、多数元素II
  • JAVA数组基础
  • Linux-0.11 文件系统exec.c详解
  • NET框架程序设计-第1章.NET框架开发平台体系架构
  • (哈希表 ) 349. 两个数组的交集 ——【Leetcode每日一题】
  • JavaScript基本语法(二)
  • ChatGPT3.5-4资源汇总,直连无梯子
  • 【Netty】使用 SSL/TLS 加密 Netty 程序(二十)
  • runway gen2
  • Day2:Windows网络编程-TCP
  • leetcode1985. 找出数组中的第 K 大整数