指针变量作为C语言中的特殊数据类型,除了用于存储内存地址之外,它与其他类型比较是否具有其他特点呢?接下来对指针类型进行分析,剖析指针类型的特点。

指针的大小与其指向的内存中存储的变量类型无关,它只与计算机操作系统有关,在32位操作系统中,指针的大小是4字节;64位操作系统中,指针的大小是8个字节。

接下来通过定义不同的指针变量类型,计算不同类型指针变量的大小,如例1所示。

例1 pointer.c#include

int main()

{

char *i ;

int *t;

double *c;

long *a;

long double *s;

unsigned int *T;

printf("指针变量i的大小是% d\n", sizeof(i));

printf("指针变量t的大小是% d\n", sizeof(t));

printf("指针变量c的大小是% d\n", sizeof(c));

printf("指针变量a的大小是% d\n", sizeof(a));

printf("指针变量s的大小是% d\n", sizeof(s));

printf("指针变量T的大小是% d\n", sizeof(T));

return 0;

}

例1的运行结果如图1所示。

图1 例1运行结果

例1通过sizeof运算符计算不同类型指针变量的大小,指针变量的大小是4字节,和指针变量定义类型无关。

猜你喜欢:

c语言指针变量字节,C语言指针变量类型和大小相关推荐

  1. c语言中短整形字节,C语言中各种整型类型所占字节数

    平台:64位编译器+LINUX+Gcc #include main() { char a; char* b; short int c; int d; unsigned int e; float f; ...

  2. c语言long int字节,C语言基本类型之long long int

    大家都知道int在linux系统下默认是占4个字节,数值表示范围是:-2147483648~2147483647.即使是无符号unsigned int类型表示范围:0-4294967295,大约42亿 ...

  3. c语言中短整形字节,C语言中的整数(short,int,long)

    C语言中的整数(short,int,long) 整数是编程中常用的一种数据,C语言使用int来定义整数(int 是 integer 的简写).欢迎大家阅读!更多相关信息请关注相关栏目! 现代操作系统中 ...

  4. c语言uint64_t转String,C语言编程 8字节的数据转换为uint64_t类型数据

    有2种方式可以实现: 第一种方式: 数据类型强制转换,需要注意平台是大端还是小端 ,如果平台是大端,那么字节数组存放的字节顺序是高字节在前:如果平台是小端,那么字节数组存放的字节顺序是低字节在前. 此 ...

  5. c语言fputc输入字符串,C语言fgetc和fputc函数用法详解(以字符形式读写文件)

    C语言fgetc和fputc函数用法详解(以字符形式读写文件),文件,字符,指针,函数,字节 C语言fgetc和fputc函数用法详解(以字符形式读写文件) 易采站长站,站长之家为您整理了C语言fge ...

  6. C语言定义了一个结构体怎么分配内存?C\C++中结构体变量与结构体指针内存分配问题?

    C语言定义了一个结构体怎么分配内存?C\C++中结构体变量与结构体指针内存分配问题? 问题1:结构体指针最开始怎么分配内存?用sizeof()是不能确定大小的. 问题2:给结构体变量分配之后,是否还要 ...

  7. c语言字符指针初始化赋值,C语言_指针变量的赋值与运算,很详细详解

    指针变量的赋值 指针变量同普通变量一样,使用之前不仅要定义说明, 而且必须赋予具体的值.未经赋值的指针变量不能使用, 否则将造成系统混乱,甚至死机.指针变量的赋值只能赋予地址, 决不能赋予任何其它数据 ...

  8. c语言指针变量的定义数组的长度,【C语言更新】指向数组的指针

    文/Edward 前面我们在讲述数组的时候曾经说过,对于数组内部元素的引用方式主要有两种,一种就是使用方括号"[]"的下标索引,另一种就是之前提到过,但是没有细致讲述的指针引用. ...

  9. c语言的返回类型是指针变量吗,C语言-指针类型

    改值场景示例 - 改变 n 的值 的函数 void change(int n) { n = 10; } int main() { int a = 20; - 这里只能把 变量a 的值传到 change ...

最新文章

  1. LSTM输入输出结构
  2. petalinux2020.1 uboot 无法正常加载的问题
  3. android ndk mac安装成功,Mac下Android Studio NDK 环境搭建并运行
  4. 关于后缀自动机的总结
  5. 学习笔记Flink(三)—— Flink安装启动与监控
  6. CertEnroll::CX509Enrollment::p_InstallResponse:ASN1 bad tag value met. 0x8009310b
  7. Spring Cloud入门一 Eureka Server
  8. Hive数据倾斜解决方法总结
  9. 【Teradata】系统吞吐量重要参数QPS(TPS)、并发数、响应时间
  10. 基本数据类型与格式化输出
  11. 关于RadUpload上传问题总结
  12. 【正点原子探索者STM32F407开发板例程连载+教学】第44章 FATFS文件系统实验
  13. java 数字转换人民币大写
  14. linux下搭建ecshop教程,linux下安装ecshop,
  15. html中outline属性,css的outline属性的作用是什么
  16. stm32核心板可以点亮灯吗_二、STM32的GPIO输出操作
  17. 【Canvas】js如何设置canvas绕图形中心旋转
  18. R语言时间序列分析之ARIMA模型预测
  19. glTF学习笔记(0)——概述
  20. 话说linux内核-uboot和系统移植第14部分-朱有鹏-专题视频课程

热门文章

  1. 网站HTML删除数据库中数据语句,如何以编程方式删除WebSQL中的数据库?
  2. Spring Security原理之springSecurityFilterChain
  3. Elasticsearch之倒排索引
  4. python svm超参数_grid search 超参数寻优
  5. jquery将html转为pdf文件,通过Jquery将HTML Div转换为PDF
  6. python 数据逐个验证_在python中验证数据的最佳方法是什么?
  7. 【PHPWord】文本输入
  8. 多条记录取最近日期的一条_Excel VBA:基于员工打卡记录的考勤数据统计
  9. C语言判断一个数是否是回文数
  10. AD环境部署文件服务器2012,Windows_server_2012部署AD域及辅域环境.doc