簡體   English   中英

C - 訪問結構中的變量

[英]C - Accessing variables in a struct

我有一個帶有變量value1的struct Item ,我將這個struct的實例放在隊列中。 我現在想查看隊列並獲取結構實例中保存的數據。

以下代碼按預期工作。

Item *itemHead = queue_peek_head(itemQueue);
printf("Head: %d\n", itemHead->value1);

但是,我想做同樣的事情,最好沒有像itemHead這樣的額外變量。 有沒有辦法做到這一點? 我的原始思路讓我看到下面的代碼,正如我所知,它不起作用(取消引用void *指針,無效的void表達式)。

*(queue_peek_head(itemQueue))->value1; //doesn't give me value1

任何人都可以從隊列中的第一個Item中獲得一個(最好是一行)訪問value1方法嗎?

((Item*)queue_peek_head(itemQueue))->value1

編譯器需要知道類型才能訪問結構的成員。

(另外,你不會做*(somePointer)->除非有一個指向指針的指針,那里有兩個解引用。)

暫無
暫無

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

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