IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 初学c语言数据类型——变量 -> 正文阅读

[C++知识库]初学c语言数据类型——变量

变量的概念

? ? ? ? ? ? ?C语言中的变量是指在程序运行时其值可以改变的量,变量的功能就是存储数据。(x或者y)变量是一段实际连续存储空间的别名,程序中通过变量来申请并命名存储空间,通过变量的名字可以使用存储空间(变量名就是内存单元的地址)。

变量的命名

? ? ? ? ? ? ?1.变量名只能是字母(A-Z,a-z)、数字(0-9)或下划线。

? ? ? ? ? ? ?2.第一个字母不能是数字。

? ? ? ? ? ? ?3.不能是c++关键字,要见名知义比如sum是求和

变量的定义

? ? ? ? ? ? ?定义变量的格式:类型 变量名 。比如int? x:int? y这是把x和y定义成整型变量?

整型变量

? ? ? ? ? ? ?整型变量是一种计算机语言。在c语言中,整型变量的值可以是十进制,八进制,十六进制,但在内存中存储着是二进制数。变量顾名思义是数值可以变的量,整型变量表示的是整数类型的数据。

? ? ? ? ? ?整型变量的分类

? ? ? ? ? ? ?整型变量分为基本整形(用int定义),短整型(short或short? int定义),长整型(long或long? int定义),无符号型。

无符号类型就是与其他类型连用,不写默认有符号类型,写了可以扩大数的范围(下面取值范围有讲),有符号的申请时前面加上signed(可以省略比如signed? int? x),无符号的加上unsigned。

? ? ? ? ? ? ?(1)无符号基本型 类型说明符为unsigned int或unsigned。

? ? ? ? ? ? ?(2)无符号短整型 类型说明符为unsigned short

? ? ? ? ? ? ?(3)无符号长整型 类型说明符为unsigned long??

?【例1】整型变量的定义与使用

#include<stdio.h>
int main(){
	int x,y,z;
	unsigned int u;
	x=1;
	y=2;
	u=3;
	z=x+y+u;
	printf("z=%d",z);
	return 0;
} 

?

?不同类型的可以运算

? ? ? ? ? ? 整型变量的取值范围? ?

? ? ? ? ? ? ?在32位操作系统中,int如果占4个字节的话,算上首部的正负号他的取值范围2^-31~2^31-1(变量的那篇关于整形数据的存储有讲到),如果要扩大数值,要把存放正负号的位置也存放数字这样的范围是0~2^32-1。

?

? ? ? ? ? ?整形数据的溢出?

? ? ? ? ? ? 当前编译器为int类型数据分配了4个字节(对应32比特位),所以有符号int类型变量a和b的取值范围是-2147483648到2147483647,所以当a取值2147483647,再加1时,就会出现“溢出”的情况,其结果b发生了反转,变成了-2147483648。

a: 0111 1111 1111 1111 1111 1111 1111 1111 (共32位)

b: 1000 0000 0000 0000 0000 0000 0000 0000 (共32位)

a和b最前面的1表示的是正负号。

#include<stdio.h>
int main(){
	int x,y;
	x=2147483647;
	y=x+1;
	printf("y=%d",y);
	return 0;
} 

? ? ? ? ?实型变量?

? ? ? ? ? ? ?在程序运行过程中可以改变其值的实型量被称为实型变量,

? ? ? ? ? ?实型变量的分类? ?

? ? ? ? ? ??在程序运行过程中可以改变其值的实型量被称为实型变量,实型变量根据数值的范围可分为单精度(float)(小数点后可以保留6位),双精度(double)(小数点后可以保留15位)

? ? ? ? ? 实型变量的定义和使用

【例2】实型变量的定义与使用

#include<stdio.h>
int main(){
	float x,y;
	double a,b;
	x=1.23;
	a=-2.36;
	y=x+a;
	b=x+a;
	printf("y=%f,b=%f",y,b);
	return 0;
} 

?可以看出单精度和双精度可以一起运算,结果是六位小数与%f有关,后边的章节我们会学到。

? ? ? ? ? ?实型数据的精度与舍入误差

? ? ? ? ? ? ?float和double的范围都是有限的float是1.2*10^-38~3.4*10^38,double是2.3*10^-308~1.7*10^308,当数据超出这个值,超出的部分就会丢失,会产生一定的误差。

【例3】

#include<stdio.h>
int main(){
	float x;
	double a;
	x=123456789.123;
	a=123456789123456729.123;
	printf("x=%f,a=%f",x,a);
	return 0;
} 

? ? ? ? ? ? ?由例题知float前七位是精确的,后两位是随机的,超出的小数部分丢失。double前16位是精确的,后边的是随机的,小数部分丢失。

? ? ? ? ? 字符型变量

? ? ? ? ? ? ?字符变量及其使用

? ? ? ? ? ? ? 字符变量是用来存放字符常量的,一个字符变量中只能存放一个字符。 字符变量的定义形式如右:char x1,x2; 定义了两个字符型变量。可以使用赋值语句对变量x1和x2赋值,如:x1='x’;x2='y';?字符型数据(常量和变量)在内存中占一个字节的空间。

#include<stdio.h>
int main(){
	char x,y;
	x='a';
	y='b';
	printf("%c,%c",x,y);
	return 0;
} 

%c后边会学她是输出字符的

? ? ? ? ? ? 字符变量在内存中的存储形式

? ? ? ? ? ? ? 字符在内存中是以ascII来存的,利用ASCII表把字符转换成数字,再把数字转换成补码存储在内存中

?

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-08-06 10:25:04  更:2022-08-06 10:26:57 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 13:12:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码