首页 > 编程语言 >0基础学C++ | 第02天 | 基础知识 | sizeof关键字 | 浮点型 | 字符型 | 转义字符 | 字符串 | 布尔类型 | 数据的输入

0基础学C++ | 第02天 | 基础知识 | sizeof关键字 | 浮点型 | 字符型 | 转义字符 | 字符串 | 布尔类型 | 数据的输入

时间:2024-06-20 12:56:38浏览次数:25  
标签:02 字符 cout int 内存空间 C++ 转义字符 using include

前言 

 该文章是在B站学习C++,同时结合自己的理解整理的笔记,视频连接:https://www.bilibili.com/video/BV1et411b73Z/?p=8&spm_id_from=333.880.my_history.page.click 

1、sizeof关键字

作用:利用sizeof关键字可以统计数据类型所占用的内存大小

语法:sizeof(数据类型/变量)

#include<iostream>
using namespace std;

int main()
{

    //整型数据 short(2)、int(4)、 long(4/8)、 long long(8)
    //利用sizeof 求出数据类型占用空间大小
    //语法:sizeof(数据类型/变量)

    short num1 = 10;

    cout << “short类型所占的内存空间为:”<< sizeof(short) << endl;

    cout << “short类型所占的内存空间为:”<< sizeof(num1) << endl;

    cout << “int类型所占的内存空间为:”<< sizeof(int) << endl;

    cout << “long类型所占的内存空间为:”<< sizeof(long) << endl;

    cout << “long long类型所占的内存空间为:”<< sizeof(long long) << endl;

    system("pasue");

    returen 0;
}

 short类型所占的内存空间为:2

 short类型所占的内存空间为:2

 int类型所占的内存空间为:2

long类型所占的内存空间为:2

 long long类型所占的内存空间为:2

2、实型(浮点型)数据

作用:用于表示小数

浮点数分为两种:1、单精度 float,2、双精度double

两者的区别在于表示的有效数据的范围不一样

数据类型占用空间有效数字的范围
float4字节7位有效数字
double8字节15 ~16位有效数字

#include<iostream>
using namespace std;

int main()
{

    //单精度:float
    //双精度:double

    float f1=3.14f;//这里3.14后面加了字母f 是因为不加f编译器会默认为是double类型

    cout<<"f1:"<< f1 <<endl;

    double f2=3.14;

    cout<< "f2:" << f2 <<endl;
    
    //默认情况下,输出一个小数,会显示6位有效数字,如何要完全显示,需要做特殊配置,后面再讲
    
    float f3=3.1415926f;

    cout<<"f3:"<< f3 <<endl;

    double f4=3.1415926;

    cout<<"f4:"<<f4 <<endl;

    //统计两种浮点型数据所占内存空间
    cout<<"float所占内存空间:"<<szieof(float)<<endl;   //4字节

    cout<<"double所占内存空间:"<<szieof(double)<<endl;   //8字节

    //科学计数法
    float f5 = 3e2;   // 3*(10*10), 这里因该是3乘10的2次方,我打不出来那个平方的符号,所以写为10*10
    cout<<"f5:"<< f5 <<endl;

    float f6 = 3e-2; //3*(0.1*0.1)

    cout<<"f6:"<< f6 <<endl;

    system("pasue");

    returen 0;
}

f1:3.14

f2:3.14

f3:3.141592

f4:3.141592 

float所占内存空间:4

double所占内存空间:8

f5:300

f6:0.03

3、字符型

作用:字符型变量用于显示单个字符

语法: char 变量名=' 字符 '

注: 字符变量并不是把字符本身放到内存存储中,而是将对应的ASCII编码放入到存储单元

#include<iostream>
using namespace std;

int main()
{

    //创建字符型变量
    char ch1 = 'a';

    //字符型变量所占内存大小 --1字节
    cout << "字符型变量所占内存大小:"<< sizeof(ch1) << endl;

    //字符型变量常见错误
    char ch2 = "a"; //不能使用双引号
    char ch3 = 'abdc'; //不能多个字母,只能一个

    //字符型变量对应的ASCII码(a为97,A为65)
    cout << int(ch1) << endl;
    
    system("pasue");

    returen 0;
}

4、 转义字符

作用:用于表示一些不能显示出来的ASCII字符

​#include<iostream>
using namespace std;

int main()
{

    //换行符 \n
    
    cout << "hello world\n"<< endl;

    //输出反斜杠 \\
    cout << "\" << endl;  //这样写是错的
    cout << "\\" << endl; //这样写才是正确的,第一个/表示的是转义符,第2个/才是要输出的/

    //水平制表符 \t  可以整齐的输出数据
    cout << "aaa\thelloworld" << endl; // \t它占8个字符,空多少格取决前面的字符占多少,空格就是8减前面字符数,
    cout << "aaaa\thelloworld" << endl; //这里空4个字符 (8-4)
    cout << "aa\thelloworld" << endl;  //这里空6个字符(8-2)
    system("pasue");

    returen 0;
}

 hello world

\

aaa     helloworld

aaaa   helloworld

aa       helloworld  

 5、字符串

作用:表示一串字符

两种风格:1、C风格:char 变量名[ ]="字符串值"

                  2、C++风格:string 变量名="字符串值"

​​#include<iostream>
using namespace std;
#include<string>
int main()
{

    //C风格
    
   char str[]="abcd"; //必须用双引号

   
    cout << str << endl;  
  

    //C++风格
    string str1="abcde"; //使用C++风格必须要包含头文件#include<string>
    cout << str1 << endl;  
    system("pasue");

    returen 0;
}

6、布尔类型

作用:布尔数据类型代表真或假的值

bool类型数据只有两个值:true真(本质1),false 假(本质0)

​​​#include<iostream>
using namespace std;

int main()
{

    //bool 变量名=真假
    
    bool flag =true;

    cout << flag << endl;  //1
  
    flag =false;

    cout << flag << endl;  //0
    cout << "bool数据类型占用内存空间:"<< sizeof(bool) <<endl;  //1
    system("pasue");

    returen 0;
}

 7、数据的输入

作用:用于从键盘获取数据湖

关键字:cin

语法:cin >> 变量 

​​​#include<iostream>
using namespace std;
#include<string>
int main()
{

    //整型数据
    int a = 0; //初始化为0
    cout<<"请输入一个整型数据:" << endl;
    cin >> a ;
    cout << "输入的整型数据a=" << a << endl;

    //浮点型数据
    double b = 0; //初始化为0
    cout<<"请输入一个浮点型数据:" << endl;
    cin >> b ;
    cout << "输入的整型数据b=" << b << endl;

     //字符型
    char c = 'a'; //初始化为a
    cout<<"请输入一个字符:" <<endl;
    cin >> c ;
    cout << "输入的字符c=" << c << endl;

     //字符串
    string d = "ac"; //初始化为ac
    cout<<"请输入一个字符串:" << endl;
    cin >> d ;
    cout << "输入的字符串d=" << d << endl;

     //bool型
    bool e = false; //初始化为false
    cout<<"请输入一个字符串:" << endl;
    cin >> e ;                      //注意这里不能直接输入 ture 或 false,应该是输入0或非0的书
    cout << "输入的d=" << e << endl;

    system("pasue");

    returen 0;
}

标签:02,字符,cout,int,内存空间,C++,转义字符,using,include
From: https://blog.csdn.net/weixin_45754224/article/details/139821499

相关文章

  • ROS机器人虚拟仿真挑战赛持续学习笔记-20240619
    cartographer需要全手工编译……比较麻烦。如果使用新版ceres-solver,版本2.x,需要修改源码,部分“接口代码”有改动。稳妥使用ceres-solver-1.13.0,且需要安装abseil-cpp。验证是否成功,使用roscd或roslaunch,查看一下是否有对于功能包:map只有room_mini和tianracer_racetr......
  • 2024年,为何游戏类外包项目增多?
      在2024年,我们在“我要外包”、“开源众包”等外包网站上查找项目时,不难发现,游戏类项目日益的额增多,相反的,前端、移动端等相应的减少,并且我们观察到游戏类外包项目呈现显著的增长趋势。这一现象背后,实际上是多种因素共同作用的结果。  首先,伴随着技术的不断进步,也为......
  • Протокол IEEE802.15.4 — структура и характеристи
    01КаковацельпротоколаIEEE802.15.4?СтандартIEEE802.15.4направленнасозданиебеспроводнойперсональнойсети(WPAN)дляпередачиданныхнаотносительн......
  • c++提供的类型转换
    在C++中,提供了几种不同的类型转换方式,每种转换方式有其特定的使用场景和语义。以下是C++中常见的几种类型转换方式:静态转换(StaticCast):使用static_cast进行转换,用于基本类型之间的转换,如数值类型的转换、非const对象指针的转换等。静态转换在编译时进行,不提供运行时的检......
  • 2024欧洲杯足球分析软件推荐
    前言在欧洲杯的热潮中,德国队以5比1的辉煌战绩点燃了赛事激情。对于广大足球迷和投注者来说,这不仅是一场视觉盛宴,更是一次智慧与运气的较量。在纷繁复杂的预测信息面前,你是否也曾感到迷茫?是否也曾因为媒体的喧嚣而失去了自己的判断?今天,笔者将分享一款AI智能足球分析软件worldliv......
  • 2024-06-20 HarmonyOs开发初体验
    2024华为开发者大会将于东莞松山湖举行,为此,特写此文。记录自己第一天入坑鸿蒙开发。鸿蒙开发简述:鸿蒙开发是指针对华为开发的一款全场景分布式操作系统的应用、服务和功能的开发工作,该操作系统名为鸿蒙,英文名为HarmonyOs。官网地址:https://hmxt.org/开发工具下载:https://hmxt.......
  • 【C++修行之道】C/C++内存管理
    目录一、C/C++内存分布 1.选择题: 2.填空题: 3.sizeof和strlen区别? 二、C语言中动态内存管理方式:malloc/calloc/realloc/free 1.malloc/calloc/realloc的区别是什么?2.这里需要free(p2)吗?三、C++内存管理方式3.1new/delete操作内置类型3.2new和delete操作......
  • 录屏神器Camtasia 2024中文永久激活授权版(附安装教程+汉化补丁) 喀秋莎(屏幕录制剪辑
    录屏&剪辑软件Camtasia如期发布最新版,带来的新功能非常实用!我们今天带来的是CamtasiaStudio2024最新版,附带crack破解程序(注册机)和激活码。可让你不花一分钱永久使用。写在前面:破解版仅供个人使用,请勿随意传播或商用。激活码使用后请勿频繁换机。频繁换机易导致禁码。......
  • COMPX202 Android Studio
    NZUWI2024S_COMPX202Assignment3:AndroidStudio(Weighting:20%)Duedate:Friday21stJune2024at23:59Submissioninstruction:Asindicatedbelow,youmustworkwithaGitrepositoryanduploadyourworkontheuniversity’sGitLabserver.Youalsonee......
  • CSP历年复赛题-P9748 [CSP-J 2023] 小苹果
    原题链接:https://www.luogu.com.cn/problem/P9748题意解读:n个苹果,每天从第1个开始,每三个苹果拿走第一个,问几天拿完,最后一个苹果第几天拿走。解题思路:由于每三个苹果拿一个,每天拿走的苹果数量是⌈n/3⌉,即(n+2)/3n每天都要减去(n+2)/3,直到n为0,记录天数即可得到总天数最......