c - C 编程中的结构指针有问题

标签 c pointers struct

我遇到了指针问题。 这是我想要的一个例子

struct Book
{
 char name[10];
 int price;
}

int main()
{

 struct Book b[10];     //Array of structure variables
 struct Book* p;        //Pointer of Structure type
 p = &b;   --- HERE is the ERROR  
}

这是错误部分

p = &b;

最佳答案

b 是一个数组,它本身可以衰减为指针变量。通过编写 &b,您实际上获取了该指针的地址,然后您最终得到了指向指针的指针。只需编写 p = b 就足够了。

关于c - C 编程中的结构指针有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35287267/

相关文章:

c - 编写将 int 返回给 Fortran 的 C 函数

c - 如何扫描数组并在捕获特定短语后执行某些操作

c - 获取环境变量的地址

c - 变量点等于数组中的元素

C、unixODBC、oracle 和日期查询

c++ - 指针后括号的含义

c++ - 获取指向集合中原始数据的指针,如 &(vector[0])

c - 使用 "="为内部的 char 数组分配结构有效吗?

c - 为什么编译器在使用结构变量时显示 "Type specifier missing"

python - 发送缓冲区的长度并使用 C 从 python 接收它