簡體   English   中英

通過指針訪問結構的成員會導致錯誤

[英]accessing a member of a struct via pointer,results in error

這是我寫的結構。

typedef struct {
    int index=NULL;
    int sd;
    pthread_t tid;
    char* name;
}client_t;

接下來我正在制作這些結構的數組。

static client_t *clients[MAXCLIENTS];

現在在main函數中,我根據數組中的位置為這些結構賦值。

    clients[freeslot]->index=freeslot;
    clients[freeslot]->sd=connfd;
    clients[freeslot]->tid=syscall(SYS_gettid);
    clients[freeslot]->name=threadnames[freeslot];  

當我編譯時,我收到這些錯誤消息。

code.c:185:12: error: ‘client_t’ has no member named ‘index’
code.c:186:19: error: ‘client_t’ has no member named ‘sd’
code.c:187:19: error: ‘client_t’ has no member named ‘tid’
code.c:188:19: error: ‘client_t’ has no member named ‘name’

我對這些錯誤消息感到困惑。 我是否以錯誤的方式分配了值?

結構中不允許分配。 嘗試在結構外部將索引分配給NULL。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM