这可能是一个非常基本的问题,但我是 C 的新手,所以请多多包涵。
我正在浏览一些用 C 编写的固件的文档,我遇到了这个问题:
typedef struct {
int x;
int arr[10];
} sx;
然后我有一个函数,其中传递了指向该类型的指针。
int f(sx xtype *sp, int i){
return sp -> arr[i];
}
我不确定两件事在哪里:根据我的 Java 经验,我认为第一个片段相当于一个超类,很像 Java 中的 Object 类,然后第二个片段使用 sx 的子类。但是我不确定。有人可以确认吗?从我到目前为止的小 C 经验来看,我认为将指针传递给类型的更易于理解的方法如下:
typedef struct xtype {
int x;
int arr[10];
} sx;
int f(sx *sp, int i){
return sp -> arr[i];
}
但我只是怀疑我从这张照片中遗漏了一些东西。提前致谢!