C语言之整形与变量地址

简介: C语言之整形与变量地址

除了我们的int unsigned int我们还有其他的整形:short短整形,long int长整形,longlong int(vc6++不支持)

short: 有符号的大小为-32768~32767,无符号的大小为0~‭65535。他的输出格式符为"%hd"

short a = 1;//定义一个短整形的变量a
sizeof(a);//sizeof取变量的大小

我们通过此判断短整型short大小为2字节。

long int:无符号的大小为0~‭4294967295‬,有符号的大小为-2147483648~2147483647.他的标准是输出格式为%ld

虽然他叫长整形,但是他的内存规定是不低于4字节就行(应编译器而异)

long int a = 12;
siezof(a);

longlong int :无符号的大小为0~2^64-1,有符号的大小为-2^63~2^63-1。 但是很可惜,"VC++6.0"不支持。他的输出格式为%lld

1. longlong int a = 12;
2. printf("%lld",sizeof(a));

用哪个取决于你数据的大小。


变量的地址:


计算机的每一块空间都有一个唯一的标志代表,本质就是一个数,从0开始,到一个很大的数,32位程序是2^32-1, 64位程序是2^64-1。这个数也叫地址,就像我们的家的地址一样。


怎么取变量的地址呢? 使用符号"&",SHIFT+上面的数字7.


怎么取变量的地址呢?

int a = 12;
&a//使用取地址符号(表达式没有分号,语句有分号,表达式都有一个结果)

直接使用“&”符号对变量取地址。每个变量都有自己唯一的地址,只要他没死,别人就永远占不了。


输出地址


预备知识:输出地址的输出格式为%p或者%#p。%p为16进制输出,%#p也是16进制输出,但是%#p是会以地址形式输出的。你不要思维定势了,总觉得地址只能用16进制的形式输出。他可以以10进制,2进制,8进制输出都可以。我们一般使用16进制输出。

int a = 12;
printf("%p",&a);//0014ff20
printf("%#p",&a);//0x0014ff20
相关文章
|
2月前
|
存储 编译器 C语言
【C语言】C语言的变量和声明系统性讲解
在C语言中,声明和定义是两个关键概念,分别用于告知编译器变量或函数的存在(声明)和实际创建及分配内存(定义)。声明可以多次出现,而定义只能有一次。声明通常位于头文件中,定义则在源文件中。通过合理组织头文件和源文件,可以提高代码的模块化和可维护性。示例包括全局变量、局部变量、函数、结构体、联合体、数组、字符串、枚举和指针的声明与定义。
71 12
|
2月前
|
C语言
【C语言】全局搜索变量却找不到定义?原来是因为宏!
使用条件编译和 `extern` 来管理全局变量的定义和声明是一种有效的技术,但应谨慎使用。在可能的情况下,应该优先考虑使用局部变量、函数参数和返回值、静态变量或者更高级的封装技术(如结构体和类)来减少全局变量的使用。
50 5
|
4月前
|
存储 C语言
【c语言】数据类型和变量
本文介绍了C语言中的数据类型和变量。数据类型分为内置类型和自定义类型,内置类型包括字符型、整型、浮点型等,每种类型有不同的内存大小和取值范围。变量分为全局变量和局部变量,它们在内存中的存储位置也有所不同,分别位于静态区和栈区。通过示例代码和图解,详细阐述了这些概念及其应用。
73 1
|
4月前
|
存储 C语言
C语言指针与指针变量的区别指针
指针是C语言中的重要概念,用于存储内存地址。指针变量是一种特殊的变量,用于存放其他变量的内存地址,通过指针可以间接访问和修改该变量的值。指针与指针变量的主要区别在于:指针是一个泛指的概念,而指针变量是具体的实现形式。
|
4月前
|
存储 编译器 C语言
C语言:数组名作为类型、作为地址、对数组名取地址的区别
在C语言中,数组名可以作为类型、地址和取地址使用。数组名本身代表数组的首地址,作为地址时可以直接使用;作为类型时,用于声明指针或函数参数;取地址时,使用取地址符 (&),得到的是整个数组的地址,类型为指向该类型的指针。
|
4月前
|
存储 C语言
C语言:设置地址为 0x67a9 的整型变量的值为 0xaa66
在C语言中,可以通过指针操作来实现对特定地址的访问和赋值。要将地址为 0x67a9 的整型变量值设为 0xaa66,可以先定义一个指向该地址的指针,并通过该指针对该内存位置进行赋值操作。需要注意的是,直接操作内存地址具有一定风险,必须确保地址合法且可写。代码示例应考虑字节序及内存对齐问题。
|
4月前
|
存储 C语言
初识C语言:常量与变量中寻找数据类型
初识C语言:常量与变量中寻找数据类型
|
5月前
|
存储 C语言
【C语言基础考研向】02 数据类型-常量-变量
本文介绍了编程中的基本概念,包括数据类型分类、常量与变量的定义及使用。首先概述了四大类数据类型:基本类型(整型、浮点、字符型)、构造类型(数组、结构体)、指针类型和空类型。接着阐述了常量与变量的区别及命名规则,并详细说明了整型、浮点型和字符型数据的特点与应用。最后总结了常见的易错点,如字符串与字符常量的区别及浮点数的默认输出格式。
|
9月前
|
C语言
C语言常量与变量、字符串与转义字符
C语言常量与变量、字符串与转义字符
64 0
|
C语言 C++
【C】C语言数据类型、常量变量的介绍
在C语言中没种数据类型所占的空间大小是不一样的,在这里给大家介绍一个库函数:sizeof,它可以计算每种数据类型所占的空间的大小,我们可以用代码来计算每种类型所占的空间的大小,如下:

热门文章

最新文章