返回介绍

入门

基础

进阶

18. 指针类型与二级指针

发布于 2024-10-07 02:37:14 字数 3085 浏览 0 评论 0 收藏 0

指针类型

  • 在同一种编译器环境下,一个指针变量所占用的内存空间是固定的。

  • 虽然在同一种编译器下, 所有指针占用的内存空间是一样的,但不同类型的变量却占不同的字节数

  • 一个int占用4个字节,一个char占用1个字节,而一个double占用8字节;

  • 现在只有一个地址,我怎么才能知道要从这个地址开始向后访问多少个字节的存储空间呢,是4个,是1个,还是8个。
  • 所以指针变量需要它所指向的数据类型告诉它要访问多少个字节存储空间

二级指针

  • 如果一个指针变量存放的又是另一个指针变量的地址,则称这个指针变量为指向指针的指针变量。也称为“二级指针”
    char c = 'a';
    char *cp;
    cp = &c;
    char **cp2;
    cp2 = &cp;
    printf("c = %c", **cp2);

  • 多级指针的取值规则
int ***m1;  //取值***m1
int *****m2; //取值*****m2

练习

  • 定义一个函数交换两个变量的值
  • 写一个函数,同时返回两个数的和与差

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文