我无法理解指针需要“类型说明符”的原因。在我看来,它们只是指针,因此它们的类型可能就像“ptr”一样,在 32 位机器中,我希望它们每个占用四个字节的内存,无论它们指向什么。
当我需要检索特定变量(int 或 double 等...)时,编译器根据某个变量的类型,会知道应该检索“多少”字节才能获得整体。我可能缺少一些逻辑,希望得到您的意见。
示例:
#include "pch.h"
#include <iostream>
int main()
{
ptr *value; // Why is this ILLEGAL?
int test = 15;
value = &test;
std::cout << *value;
}
最佳答案
能够说出你对里面的期望。它指向内存的类型化部分。
否则,对指针(而不是地址本身)的所有操作都将只是盲目地跟随线索。
关于c++ - 如果 C/C++ 指针是 "just"地址,为什么需要类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55158182/