这可能是一个非常基本的问题,但我是 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];
                    }
但我只是怀疑我从这张照片中遗漏了一些东西。提前致谢!