C/C++笔记(一)基本数据类型篇

本文是作者关于C/C++的个人学习笔记,主要介绍了编程的基础——数据类型,包括变量与常量的定义、基本数据类型的分类及其特点,如整型提升等,并提到了不同数据类型的表示范围和进制转换,旨在帮助初学者理解和运用数据类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文系列仅是本人根据个人理解对C/C++语言的一些理解笔记、介绍不喜勿喷

软件是对计算机程序,运行程序所需数据以及程序有关文档的总称

本文是本人基于近几年的学习、工作进行整理,结合自己所学写下C/C++笔记系列文章,也期待能给一些初入编程门径者一些启发和学习的资料

本人认为编程的基础就是对数据的理解,对数据类型的理解与灵活运用,可以使你的程序运行更加流畅……

首先先介绍下C/C++语言数据类型中的一些术语等基本知识

一、变量与常量:

变量:即在程序中可以改变的量;

常量:顾名思义就是在程序中不能改变的量,一般来说在在一个变量定义中我们可以认为“=”号左面的数据是变量,右面的数据是常量;

二、如何定义变量?


1.先定义(内存分配),再使用

格式:类型 变量名;

//例如
int a;//在这里 int 就是类型 a就是定义的变量名

变量名:要求合法标识符
合法标识符:
1.字母、数字、下划线组成
2.开头不能是数字
3.不能是关键字

为了以后的代码维护等相关操作,提高代码的可读性,我们要求对变量名进行规范化处理

注意:
1.区分大小写
2.名字不宜过长
3.命名法则:正式命名法:所有首字母大写
4.顾名思义:g_全局变量 指针p_

《匈牙利命名法》

匈牙利命名法是一种编程时的命名规范。基本原则是:变量名=属性+类型+对象描述,其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分。要基于容易记忆容易理解的原则。保证名字的连贯性是非常重要的。

//例如
Class MyClass//此例子中的类和指针在以后会有所介绍
{
public://这里是公有类型
MyClass();//构造函数
~MyClass();//析构函数


private://这里是私有类型
MyClass * m_pMyClass;//例如这里的命名m代表的是私有类型,p代表指针也就是变量类型,MyClass代表这个变量的变量名
int *m_iMyInt;//同上


}

《驼峰命名法》

  驼峰命名法(Camel-Case)又称驼峰式命名法,是电脑程式编写时的一套命名规则(惯例)。正如它的名称CamelCase所表示的那样,是指混合使用大小写字母来构成变量和函数的名字。程序员们为了自己的代码能更容易的在同行之间交流,所以多采取统一的可读性比较好的命名方式。

//例如
int myStudentCount; 

2.定义变量名时要注意选择数据类型以避免数据溢出



基本数据类型:

整型(int(2(16位机器)或者4)、long(4)、short(2)、long long(8))、字符型(char)、布尔型(bool)、浮点型(double,float)

※(C标准中并没有具体给出规定那个基本类型应该是多少字节数,而且这个也与机器、OS、编译器有关,比如同样是在32bits的操作系统系,VC++的编译器下int类型为占4个字节;而tuborC下则是2个字节。所以int,long int,short int的宽度都可能随编译器而异。)

但有几条铁定的原则(ANSI/ISO制订的):

sizeof(short int)<=sizeof(int)

sizeof(int)<=sizeof(long int)

short int至少应为16位(2字节)

long int至少应为32位。


字符型:
字符常量:'a','0',
字符串常量:"ab"  以'\0'表示结尾
每一字符都会对应一个整数,该整数称为字符ASCII码值.字符是以ASCII码值形式存储
布尔型:1个字节: 0-1
布尔型常量:true(1),false(0)
一切非0的数都为真.
浮点型(float(4),double(8),long double(8或16))
浮点型常量:
1.小数形式(3.14) 2.指数形式(3.2e-2);

整型常量:
10进制、8进制(0开头,每一位0-7)、16进制(0x开头,每一位上的数0-9、a-f)
2进制->机器语言 1字节=8位
进制转换:
10进制—>n进制 求余法
n进制->10进制 每一位上的数*n的权值()
2进制—>8进制 每三位二进制转换成一个八进制(右-左 高位补零)
8进制—2进制 每位八进制进制数,转换成三位二进制
2进制—>16进制 每四位二进制转换成一个十六进制(右-左 高位补零)
16进制—2进制 每一位十六进制数,转换成四位二进制


每一种类型变量所占字节数sizof

数据存储时,最高位表示符号位,0为正,1为负

※在计算机内部存贮中数据以二进制的补码的形式存储

数据类型的表示范围:
short 2个字节
最大值:0111111 11111111=10000000 00000000-1=2^15-1
最小值:最小负数绝对值=最大正数+1           -(2^15)



数据溢出:当变量的值超出了数据的表示范围
计算机处理:警告
>数据类型表示的最大值=该数-该数据类型表示的数的数量
<数据类型表示的最小值=该数+该数据类型表示的数的数量


 

三、整型提升

混合运算:不同类型之间的运算
1.一个整数默认是int型,一个小数默认是double
2.运算结果的类型以精度高的类型为准。
3.无符号类型与有符号类型运算结果为无符号的类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值