c - 声明 '(int *) ptr[N]' 在 C 中是什么意思?

标签 c arrays pointers declaration

当我试图用括号强调指针数组的声明时,我发现了一个令人费解的数组,如 (int *) ptr[N];

GCC C 编译器说:

错误:未声明 ptr(在此函数中首次使用)

谁能解释一下错误的来源?

最佳答案

很简单:变量ptr还没有声明。不,(int *) ptr[N]; 不是声明,它是数组下标表达式的类型转换。

如果你想要一个指针数组,你应该这样做

int *ptr[N];

关于c - 声明 '(int *) ptr[N]' 在 C 中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19783492/

相关文章:

javascript - 如何解决nodejs javascript中的 `...`错误

有人可以给我一个 "pure pointer notation"到 C 数组的例子吗?

c - 警告 : Assignment from Incompatible Pointer Type [enabled by default] while assigning Function Address to Function Pointer

c - 段错误,malloc 字符指针

c - 如何在 c 中使用 Winrt API 创建库?

c - 串行端口上的错误文件描述符

arrays - Ada 中堆栈分配数组的访问类型

php - 如何在php中连接两个数组?

c - 指针如何存储在内存中?

c++ - 在 g++ 中使用 __attribute__ 的不平衡括号