记录一下C++的学习之旅吧--C++基础

news2024/11/20 11:36:26

文章目录

  • 前言
  • using namespace std; 使用标准命名空间
  • 一、helloworld-输出表示
    • 1.1代码
    • 1.2 运行结果
  • 二、变量
    • 2.1.1 普通变量代码
    • 2.1.2 运行结果
    • 2.2.1 常量和变量代码
    • 2.2.2 运行结果
  • 三、sizeof---统计数据类型所占的内存大小
    • 3.1 代码
    • 3.2 运行结果
  • 四、小数表示
    • 4.2 运行结果
  • 五、字符表示
    • 5.1 代码表示-站是一个字符
    • 5.2 运行结果
  • 六、转义字符
    • 6.1 代码
    • 6.2 运行结果
  • 七、字符串
    • 7.2 运行结果
  • 八、数据输入-cin
    • 8.1 代码
    • 8.2 运行结果
  • 总结


前言

学校的C++课程好无聊,干脆自己一下之前在B站学习黑马的C++课程写的代码,找回一点记忆吧。
编译器:Visual Studio 2022


using namespace std; 使用标准命名空间

什么是命名空间?

命名空间是C++中用于组织代码和避免命名冲突的一种机制。它允许在全局作用域中创建一个或多个独立的命名空间,以便在其中定义变量、函数、类和其他命名实体。

命名空间可以被视为一个容器,其中包含了相关的标识符,防止它们与其他代码中的标识符产生冲突。通过在命名空间中定义的标识符可以使用命名空间作用域解析运算符 :: 来访问。

在C++中,命名空间的语法如下所示:
namespace namespace_name { // 在此定义变量、函数、类等 }
在定义的命名空间内部,可以包含各种声明和定义,例如:

变量
函数

结构体
枚举
其他命名空间
命名空间的使用可以帮助程序员编写更清晰、更模块化的代码,避免全局命名冲突,并且可以更好地组织和管理大型项目。例如,标准库中的所有标识符都位于 std 命名空间中,以避免与用户代码中的标识符发生冲突。

一、helloworld-输出表示

1.1代码

#include <iostream>
using namespace std;
//黑马程序员的C++教程
int main()
{
	cout << "hello world" << endl;
	//printf_s("hello");

	system("pause");
	return 0;
}

并没有什么好解释的,endl属于换行符,可有可无啦。
🌷注意cout别写成计数的了,经常做错。

1.2 运行结果

在这里插入图片描述

二、变量

2.1.1 普通变量代码

#include <iostream>
using namespace std;

int main()
{
	int a = 10;

	cout << "a = " << a << endl;

	system("pause");
	return 0;

}

唯一值得关注的是 'a='这类的文字表述怎么写的。

2.1.2 运行结果

在这里插入图片描述

2.2.1 常量和变量代码

#include <iostream>
using namespace std;

//宏定义是一个常量了,不能作为变量赋值
#define Day 7

int main()
{
	cout << "一周一共有:" << Day << "天" << endl;
	//const修饰的是变量 = 常量---不可修改
	const int month = 12;
	//month = 24;	会报错
	cout << "一年一共有:" << month << "月份" << endl;
	system("pause");
	return 0;
}

如果给常量month定义,报错现象如图
在这里插入图片描述

2.2.2 运行结果

在这里插入图片描述

三、sizeof—统计数据类型所占的内存大小

3.1 代码

/*sizeof---统计数据类型所占的内存大小*/
#include <iostream>
using namespace std;

int main()
{
	int num1 = 1;
	cout << "num1类型所占的内存空间为:" << sizeof(num1) << endl;
	cout << "short类型所占的内存空间为: " << sizeof(short) << endl;
	cout << "int类型所占的内存空间为:" << sizeof(int) << endl;
	cout << "long类型所占的内存空间为:" << sizeof(long) << endl;
	cout << "long long 类型所占的内存空间为:" << sizeof(long long) << endl;

	system("pause");
	return 0;
}

在C++中,short 是一种整数数据类型,用于存储较小范围的整数值。它通常表示为16位带符号整数,其范围通常为 -32768 到 32767。short 的大小和范围可能会因编译器和操作系统的不同而有所变化,但通常它是一个较小的整数类型。
我是使用x86的操作系统的。
在这里插入图片描述

3.2 运行结果

在这里插入图片描述

四、小数表示

#include <iostream>
using namespace std;

int main()
{
	//数字后面加f---告诉编译器这个数据是单精度,不然会默认是双精度
	//鼠标悬停展示数据类型
	//float f1 = 3.14;
	float f1 = 3.14f;
	cout << "f1 = " << f1 << endl;

	double d1 = 3.1415927;
	cout << "d1 = " << d1 << endl;

	cout << "float 类型所占的内存空间为:" << sizeof(float) << endl;	 //4字节
	cout << "double 类型所占的内存空间为:" << sizeof(double) << endl; //8字节
	
	//科学计数法
	float f2 = 3e2;	//3*10^2
	cout << "f2 = " << f2 << endl;	 

	system("pause");
	return 0;
}
  • 鼠标悬停展示数据类型
    在这里插入图片描述

4.2 运行结果

在这里插入图片描述
数字后面加f—告诉编译器这个数据是单精度,不然会默认是双精度
在这里插入图片描述

五、字符表示

5.1 代码表示-站是一个字符

注意单个字符是单引号''
值得注意的还有获取单个字符的大小的办法-需要进行类型转换。

#include <iostream>
using namespace std;

int main()
{
	//字符型变量只是占一个字节
	//字符型变量不是字符本身放在内存中存储,而是把对应的ASCII码放入存储单元
	char ch = 'a';		//注意是单引号
	cout << ch << endl;

	cout << "char字符型变量所占内存 :" << sizeof(char) << endl;

	cout << (int)ch << endl;

	system("pause");
	return 0;
}

5.2 运行结果

在这里插入图片描述

六、转义字符

6.1 代码

直观感受制表符的魅力。

#include <iostream>
using namespace std;

int main()
{
	//换行符
	cout << "helloworld \n";
	//反斜杠 第一个反斜杠相当于提示要输出特殊字节,第二个表示所要输出的
	cout << "\\" << endl;
	//水平制表符		\t
	cout << "The world is wonderful\t because of me" << endl;
	cout << "The world\t is wonderful because of me" << endl;
	cout << "The world is\t wonderful because of me" << endl;

	system("pause");
	return 0;
}

6.2 运行结果

这个得对应着看才能理解。
在这里插入图片描述

七、字符串

字符串有两种表述方法,一种是C语音风格,需要[]来表示的。
另一种是C++风格,直接定义string类型的变量。
—注意有些情况需要包含头文件<String.h>。

#include <iostream>
using namespace std;

int main()
{
	//C风格字符串
	char str[] = "hello world";
	cout << str << endl;

	//C++风格字符串
	//在旧版本需要包含<String.h>
	string str2 = "susocool";
	cout << str2 << endl;

	system("pause");
	return 0;
}

7.2 运行结果

在这里插入图片描述

八、数据输入-cin

仔细回想一下,C++的输入 C in;输出C out,确实很好记忆。
相对于C语音来说逻辑上会清晰点

8.1 代码

#include <iostream>
using namespace std;

int main()
{
	
	int a = 0;
	cout << "请给整型变量a赋值:" ;
	cin >> a;
	cout << "整型变量a = " << a << endl;

	float f = 3.14f;
	cout << "请给浮点型变量f赋值:";
	cin >> f;
	cout << "浮点型变量f = " << f << endl;
	
	char ch = 'a';
	cout << "请给字符型变量ch赋值:";
	cin >> ch;
	cout << "字符型变量ch = " << ch << endl;
	
	string str = "hello";
	cout << "请给字符串变量ch赋值:";
	cin >> str;
	cout << "字符串变量ch = " << str << endl;

	system("pause");
	return 0;
}

注意一下符号的方向就行了。

8.2 运行结果

在这里插入图片描述


总结

这篇文章依旧没有总结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1514183.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言分析基础排序算法——计数排序

目录 计数排序 计数排序基本思路 计数排序改进思路 计数排序 计数排序又称为鸽巢原理&#xff0c;是对哈希直接定址法的变形应用。具体思路为&#xff1a; 统计相同元素出现次数根据统计的结果将序列回收到原来的序列中 计数排序基本思路 基本思路分析&#xff1a; //以…

2024春秋蓝桥杯reverse——crackme01

尝试了下输入没有任何反应 查看——32位——IDA打开 我之前没怎么写过win32&#xff0c;所以我开始在string里面找flag,wrong,right什么的字符&#xff0c;都不行 然后我又在函数里面找main&#xff0c;也什么收获的没有,OK废话完了 在win32里面 关于弹窗的函数&#xff1a;…

EPSON X2A0003510033 XV7081BB介绍

X2A0003510033 XV7081BB是一款具有SPI接口&#xff0c;这款传感器主要用于商业类应用&#xff0c;具体可以应用于抗震和姿态控制领域&#xff0c;以及人机接口的运动检测中&#xff0c;这表明它在工业应用、机器人技术、自动驾驶车辆以及任何需要精确角度测量和姿态控制的场合都…

Codeforces Round 933 (Div. 3) A~D

比赛链接 : codeforces.com/contest/1941 A . Rudolf and the Ticket 直接暴力即可 ; #include<bits/stdc.h> #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define endl \n #define lowbit(x) (x&(-x)) #define sz(a) (int)a.size() #define p…

手搭手RocketMQ发送消息

消息中间件的对比 消息中间件 ActiveMQ RabbitMQ RocketMQ kafka 开发语言 java erlang java scala 单击吞吐量 万级 万级 10万级 10万级 时效性 ms us ms ms 可用性 高(主从架构) 高(主从架构) 非常高(主从架构) 非常高(主从架构) 消息中间件: acti…

mybatisplus使用基本步骤

1.设计实体类&#xff0c;给实体类加一些需要的注解 2.创建Service接口继承mybatisplus提供的 IService<实体类>接口 3.实现Service接口&#xff0c;并继承mybatisplus提供的 ServiceImpl<mapper接口&#xff0c;实体类>类 4.mapper接口继承mybatisplus提供的 B…

java020 - Java集合进阶

1、集合知识回顾 1.1 集合特点 提供了一种储存空间可变的储存模型&#xff0c;储存的数据容量随时可以发生改变。 1.2 集合类体系结构 单列集合和双列集合&#xff1a; 单列集合中&#xff1a;list和set区别&#xff08;数据是否重复&#xff09; 区分接口和实现类&#…

【零基础学习04】嵌入式linux驱动中信号量功能基本实现

大家好,为了进一步提升大家对实验的认识程度,每个控制实验将加入详细控制思路与流程,欢迎交流学习。 今天给大家分享一下,linux系统里面信号量操作的具体实现,操作硬件为I.MX6ULL开发板。 第一:信号量基本简介 信号量是同步的一种方式,linux内核也提供了信号量…

【数据结构】二叉树OJ题目

965. 单值二叉树 如果二叉树每个节点都具有相同的值&#xff0c;那么该二叉树就是单值二叉树。 只有给定的树是单值二叉树时&#xff0c;才返回 true&#xff1b;否则返回 false。 示例 1&#xff1a; 输入&#xff1a;[1,1,1,1,1,null,1] 输出&#xff1a;true示例 2&#x…

链路聚合实验(思科)

华为设备参考&#xff1a; 一&#xff0c;技术简介 网络设备的链路聚合技术&#xff08;Link Aggregation&#xff09;是一种将多个物理链路捆绑在一起&#xff0c;形成一个逻辑链路的技术。这样做可以增加带宽、提高可靠性和实现负载均衡。 二&#xff0c;实验目的 橙色的阻…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的条形码二维码检测系统(深度学习+UI界面+训练数据集+Python代码)

摘要&#xff1a;在物流和制造业中&#xff0c;开发一套高效的条形码与二维码识别系统显得尤为关键。本博文深入探讨了如何利用深度学习技术打造出一套先进的条形码及二维码检测系统&#xff0c;并且提供了一套完整的实施方案。该系统搭载了性能卓越的YOLOv8算法&#xff0c;并…

基于Ambari搭建大数据分析平台

一、部署工具简介 1. Hadoop生态系统 Hadoop big data ecosystem in Apache stack 2. Hadoop的发行版本 Hadoop的发行版除了Apache的开源版本之外&#xff0c;国外比较流行的还有&#xff1a;Cloudera发行版(CDH)、Hortonworks发行版&#xff08;HDP&#xff09;、MapR等&am…

xss.pwnfunction.com靶机 Warmups

通关要求弹出警告框alert(1337) 没有用户交互 不能使用外链接 在chrome中测试 Ma Spaghet! 通过分析代码我们可以看到它直接用innerHTML将接收的内容赋值 但是我们不能使用<script>标签因为&#xff1a;HTML 5 中指定不执行由 innerHTML 插入的 <script> 标签。 所…

读书笔记之《机器与人》:AI如何重构工作方式和流程?

《机器与人: 埃森哲论新人工智能》作者是【美】保罗•多尔蒂和詹姆斯•威尔逊 &#xff0c;原作名: Human Machine: Reimagining Work in the Age of AI&#xff0c;2018年出版。 保罗•多尔蒂&#xff08;PAUL DAUGHERTYH&#xff09;&#xff1a;埃森哲首席技术官和创新官、…

Spring MVC中的REST风格

文章目录 REST风格1 REST简介问题导入1.1 REST介绍1.2 RESTful介绍1.3 注意事项 2 RESTful入门案例问题导入2.1 快速入门2.2 PathVariable介绍2.3 RequestBody、RequestParam、PathVariable区别和应用 3 REST快速开发【重点】3.1 代码中的问题3.2 Rest快速开发 4案例&#xff1…

springboot的maven多模块如何混淆jar包

springboot的maven多模块如何混淆jar包 一.简介二. 示例2.1 基本配置2.2 结果 三. 错误3.1 错误13.2 错误2 四. 参考文章 前言 这是我在这个网站整理的笔记,有错误的地方请指出&#xff0c;关注我&#xff0c;接下来还会持续更新。 作者&#xff1a;神的孩子都在歌唱 一.简介 …

【node】模块化与包(二)

1、模块化的基本概念 模块化是指解决一个复杂的问题时&#xff0c;自顶向下逐层把系统划分成若干模块的过程。对于整个系统来说&#xff0c;模块是可组合、分解和更换的单元。 &#xff08;1&#xff09;模块化的优点 遵循固定规则&#xff0c;把大文件拆分成对立并相互依赖…

Python使用FastAPI提供图片缩略图生成接口

使用pillow的thumbnail生成缩略图时&#xff0c;会保持原图的宽高比&#xff1b;使用的opencv的resize则不会 具体代码如下&#xff1a; #!/usr/bin/env python import re import sys from enum import Enum from io import BytesIO from pathlib import Path from typing im…

蓝桥杯 2022 dp 背包

蓝桥杯 2022 dp 背包 题目链接&#xff1a; https://www.lanqiao.cn/problems/2186/learning/?subject_code1&group_code4&match_num13&match_flow2&origincup 题目&#xff1a; 代码&#xff1a; #include<bits/stdc.h> using namespace std;#defi…

王道机试C++第6章 数学问题和22年蓝桥杯省赛选择题Day34

6.1 进制转换 二进制数&#xff08;十转二&#xff09; 习题描述 大家都知道&#xff0c;数据在计算机里中存储是以二进制的形式存储的。 有一天&#xff0c;小明学了C语言之后&#xff0c;他想知道一个类型为unsigned int 类型的数字&#xff0c;存储在计算机中的二进制串是…