gpt4 book ai didi

C 关于不同数据类型的指针

转载 作者:行者123 更新时间:2023-12-02 07:22:00 25 4
gpt4 key购买 nike

指针总是存储一个整数值,即地址,所以为什么我们需要用不同的数据类型声明它们。

喜欢

int a=3,*p=&a;
char c=r,*cha=&r;

为什么我们不能这样做

int *c;
char r=a;
c=&r;

最佳答案

本质上是因为

    如果指针类型不明确,
  1. 指针算法将无法工作。

  2. 指向成员运算符的指针不适用于struct 指针类型。

  3. 类型的对齐要求可能不同。可以将 char 存储在无法存储 int 的位置。

  4. C 标准不保证指针的大小相同:即 sizeof(int*) 不一定与 sizeof(char*)。这允许 C 语言用于奇特的架构。

关于C 关于不同数据类型的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43086977/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com