兮兮的C++学习笔记(二)(数据类型)

关键字与标识符

关键字和标识符是在编程语言中非常重要的概念:

一,关键字

定义

关键字是编程语言中预先定义好的、有特殊含义的保留字。它们被语言本身用于特定的语法结构和功能实现。
例如,在Python中,“if”“else”“while”“for”“def”等都是关键字。“if”用于条件判断,“def”用于定义函数。

特点

关键字不能用作变量名、函数名或其他标识符。因为它们已经被语言赋予了特定的任务,如果被重新定义会造成语法错误。
不同的编程语言有各自不同的关键字集。比如Java中的“public”“class”“static”等关键字,C++中的“class”“namespace”“template”等。

二,标识符

定义


标识符是程序员为了标识变量、函数、类、模块等程序实体而自定义的名字。
在Python中,可以定义像“my_variable”“calculate_sum”这样的标识符来表示变量或者函数。

命名规则

由字母(包括大写和小写字母)、数字和下划线组成。
不能以数字开头。例如“1_variable”在大多数编程语言中是非法的标识符,而“_variable1”通常是合法的。
区分大小写。在C++中,“MyVariable”和“myvariable”被视为两个不同的标识符。
不能与关键字相同。如在Java中,不能将“class”定义为变量名。

作用

标识符的作用是为了提高程序的可读性和可维护性。通过给变量、函数等取有意义的名字,可以让其他程序员(或者自己在一段时间后)更容易理解程序的功能。例如,用“user_age”作为表示用户年龄的变量名就比用“a”更能传达其含义。

注意:如果你写代码不写注释,公司面试时就极有可能把你开了。(维护人员一定会骂骂咧咧的)一个程序开发费劲的主要有两方面:研发与维护。代码是写给人看的,毕竟运行也就一下子的事情。

变量

变量在编程中的作用

  1. 存储数据
变量可以存储各种类型的数据,如整数、浮点数、字符串等。通过给变量赋值,
程序可以将数据存储在内存中,以便在需要的时候进行访问和处理。
  1. 表示数据
变量可以用来表示不同类型的数据。
通过给变量命名,程序员可以使用有意义的名称来表示数据,使程序更易读、易理解。

基本数据类型有:

整数类型:用于存储整数值,可表示正数、负数和零。
不同编程语言中的整数类型名称和大小可能不同,如 Java 中的 byte(1 字节)、short(2 字节)、int(4 字节)、long(8 字节);C 语言中的 int、short、long 等。

浮点数类型:用于存储带有小数部分的数值,能表示非整数数值,包括小数、科学计数法等。
常见的有 float(单精度,4 字节)和 double(双精度,8 字节),如 Java、C 语言等都有这两种浮点数类型。float 表示大约 7 位有效数字,double 表示大约 15 位有效数字。

字符类型:用于存储单个字符。不同编程语言中的字符类型大小和编码方式可能不同,如 Java 中的 char 通常为 2 字节,采用 Unicode 编码;C 语言中的 char 一般为 1 字节,采用 ASCII 编码等。

布尔类型:用于存储逻辑值,只有真和假两个值,常见的布尔类型有 bool。
在 Java、C、C++ 等语言中都有布尔类型,通常占 1 字节或 1 位。

注意:
1,整数类型常量不可以无限大(想一想也不可能,关键看CPU寄存器以及编译器的不同)。
2,浮点型常量,只能采用十进制,表示方法:小数表示法以及指数表示法。
比如1e5(或者1E5)表示100000。E(e)之前必须有数字,后面跟整数

  1. 数据传递
变量可以作为参数传递给函数或方法,以便在不同的代码块之间共享数据。
通过传递变量,程序可以在不同的函数或方法中访问和操作同一份数据。
  1. 数据计算
变量可以用来进行数学运算或逻辑运算。程序可以使用变量来存储中间结果,进行复杂的计算或判断逻辑。
  1. 状态管理
变量可以用来管理程序的状态。
通过改变变量的值,程序可以根据不同的条件执行不同的操作,实现程序的控制流程和逻辑。

常量

在C和C++中,可以使用 const 关键字来定义常量。
例如:
const int MAX_NUM = 100;
这里MAX_NUM就是一个整型常量,其值为100,在程序运行期间不能被修改。
还有预定义常量,像PI(圆周率),在数学库中通常定义为const double PI = 3.1415926…;。

进制

常见要素

数位:指一个数中每个数字所占的位置,从右往左依次为个位、十位、百位等。不同数位上的数字表示的数值大小不同。

基数:是进制的基本特征,表示每种进制中允许使用的数字符号的个数。例如,十进制的基数是 10,有 0-9 这 10 个数字符号;二进制的基数是 2,数字符号只有 0 和 1。

位权:在一个数中,每个数位都有一个固定的位权值。对于整数部分,从右往左,第 n 位的位权是基数的 (n-1) 次方;对于小数部分,从左往右,第 m 位的位权是基数的 - m 次方。

常见进制类型

二进制:基数为 2,数字符号只有 0 和 1,运算规则是逢二进一。在计算机领域应用广泛,因为计算机硬件可以很容易地用高电平和低电平这两种状态来表示 0 和 1,便于数据的存储和处理。例如,二进制数 101 表示的十进制数为 5。以 0b 或 0B 开头来表示二进制数。

#include <iostream>
int main() {
    int binary_num = 0b101;
    std::cout << binary_num << std::endl;
    return 0;
}

八进制:基数为 8,数字符号为 0-7,逢八进一。八进制的每一位可以用三位二进制数来表示,常用于计算机系统中对数据的简化表示和处理。例如,八进制数 32 表示的十进制数为 26。以数字 0 开头来表示八进制数。

#include <iostream>
int main() {
    int octal_num = 032;
    std::cout << octal_num << std::endl;
    return 0;
}

十进制:基数为 10,数字符号是 0-9,逢十进一,是人们日常生活和数学运算中最常用的进制。例如,数字 123 表示 1 个百、2 个十和 3 个一的和。

#include <iostream>
int main() {
    int decimal_num = 123;
    std::cout << decimal_num << std::endl;
    return 0;
}

十六进制:基数为 16,数字符号除了 0-9 外,还使用 A-F(或 a-f)来表示 10-15,逢十六进一。在计算机编程中,常用于表示内存地址、颜色值等。例如,十六进制数 A5 表示的十进制数为 165。以 0x 或 0X 开头来表示十六进制数。

#include <iostream>
int main() {
    int hex_num = 0xA5;
    std::cout << hex_num << std::endl;
    return 0;
}

进制转化

比如:二进制与十进制互转
二进制转十进制:从右至左,将二进制位上的数字乘以的相应位数次幂(从开始),然后将结果相加。

十进制转二进制:整数部分用除二取余法,将十进制数除以 2,取余数,再用商继续除以 2,直到商为 0,将余数倒序排列。小数部分采用乘二取整法。

/10进制转X进制/
#include<bits/stdc++.h>
using namespace std;
int n,x;
int a[10000000];
string zd = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
void f(int n,int x);
int main(){
    cin>>n>>x;
    f(n,x);
    return 0;
}
void f(int n,int x){
    if(n<0) cout<<"-";
    int k=0,i,j=abs(n);
    do {
        k++;
        i=j%x;
        j/=x;
        a[k]=i;
    }while(j!=0);
    for(int h=k;h>=1;h--){
        if(a[h]<10) cout<<a[h];
        else cout<<zd[a[h]];
    }
}

数据输入与输出

附录

美国ASC编码
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值