找回密碼 或 安全提問
 註冊
|註冊|登錄

伊莉討論區

搜索
感激所有對伊莉作出奉獻的人尊貴會員無限使用任何功能搞笑、娛樂、精彩的影片讓你看
mega 無三上悠亜火影ntrjuliamg 無碼gd
magical ge無碼雙胞胎in no ne人形の姫剛強御父292my 71

休閒聊天興趣交流學術文化旅遊交流飲食交流家庭事務PC GAMETV GAME
熱門線上其他線上感情感性寵物交流家族門派動漫交流貼圖分享BL/GL
音樂世界影視娛樂女性頻道潮流資訊BT下載區GB下載區下載分享短片
電腦資訊數碼產品手機交流交易廣場網站事務長篇小說體育運動時事經濟
上班一族博彩娛樂

[簡] 為美好的世界獻

[繁]狼與辛香料 MERCH

(4月新番)[繁]無職轉

(4月新番)[繁]怪獸8號

[繁]轉生貴族憑鑑定技

[繁]怪物轉生 Re:Mons
C & C++ 語言C# 語言Visual Basic 語言PHP 語言JAVA 語言
查看: 4368|回復: 7
打印上一主題下一主題

[問題]關於C語言的 struct (已解決)[複製鏈接]

Rank: 1

帖子
47
積分
41 點
潛水值
13340 米
跳轉到指定樓層
樓主
發表於 2017-1-10 10:58 PM|只看該作者|倒序瀏覽
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com
本帖最後由 在那裡 於 2017-1-13 07:53 PM 編輯

struct body {
    int x,y;
    void set(int X, int Y) {x=X; y=Y;} //error
    struct body *next;
};
typedef struct body BODY;

BODY head , body , v = {1,0} , cookie; // v 移動向量
head.next = &body;  //error
body.next = NULL;  // error

int main()
{
    return 0;
...
瀏覽完整內容,請先 註冊登入會員
分享分享0收藏收藏0支持支持0

使用道具檢舉

inunu 該用戶已被刪除
頭香
發表於 2017-1-11 03:04 AM|只看該作者
若新密碼無法使用,可能是數據未更新。請使用舊密碼看看。
你用 C 還是 C++ compiler?
C 本身沒有引進物件導向的概念, 不能定義 member function
而你第三行正好定義了 set() 這個 body 的 member function
之後的兩個 error 都是在 function 之外寫程式碼, 應該要寫到 main() 裡頭

使用道具檢舉

Rank: 2Rank: 2

帖子
245
積分
201 點
潛水值
13532 米
3
發表於 2017-1-11 11:28 AM|只看該作者
如果瀏覽伊莉時速度太慢或無法連接,可以使用其他分流瀏覽伊莉,www01.eyny.com(02,03)。
在非 function 包含 main(), 之外只能宣告, 或 assign init value (非 member)
所以如 inunu 所講,

head.next = &body;  //error   <-- head.next 已經是在操作 head 的member了
body.next = NULL;  // error

請移到 main() 內

至於 void set(),  c++才支援 method, 所以請把你的附檔名從 .c 改成 cpp
如果是Linux, gcc 自動會 call g++ 來 compile cpp.
...
瀏覽完整內容,請先 註冊登入會員
無欲則剛, 有欲則子孫滿堂. 看來我只比無好一點點!

使用道具檢舉

Rank: 1

帖子
47
積分
41 點
潛水值
13340 米
4
發表於 2017-1-13 07:52 PM|只看該作者
如果你忘記伊莉的密碼,請在登入時按右邊出現的 '找回密碼'。輸入相關資料後送出,系統就會把密碼寄到你的E-Mail。
本帖最後由 在那裡 於 2017-1-18 06:46 PM 編輯

哦哦
原來如此!
移動main狀況就解除了,檔名改成cpp後set的錯誤也消失了,
謝謝!


補充內容 (2017-1-18 06:45 PM):
懂了
不可以在函式或main以外的區域進行運算(除了宣告時)
不過.cpp那方面我是覺得有點奇怪
因為我看過有人用.c的檔名,可裡面卻進行跟我一樣動作
...
瀏覽完整內容,請先 註冊登入會員

點評

scottcheng 問題你懂了嗎?  發表於 2017-1-14 02:07 AM

使用道具檢舉

Rank: 2Rank: 2

帖子
128
積分
726 點
潛水值
9520 米
5
發表於 2017-6-3 04:42 PM|只看該作者
在那裡 發表於 2017-1-13 07:52 PM
下載: 訪客無法瀏覽下載點,請先 註冊登入會員

哦哦
原來如此!
移動main狀況就解除了,檔名改成cpp後set的錯誤也消失了,

你的struct直能用來declare種類int,char,double等等...
瀏覽完整內容,請先 註冊登入會員





成為伊莉的版主,你將獲得更高級和無限的權限。把你感興趣的版面一步步地發展和豐盛,那種滿足感等著你來嚐嚐喔。

使用道具檢舉

Rank: 4Rank: 4Rank: 4Rank: 4

帖子
7565
積分
4321 點
潛水值
34960 米
6
發表於 2017-6-4 10:50 AM|只看該作者
若瀏覽伊莉的時侯發生問題或不正常情況,請使用Internet Explorer(I.E)。
本帖最後由 chevylin0802 於 2017-6-4 11:05 AM 編輯

在函式外是可以指定初始值的
在C語言來說這種情形相當常見
尤其是Linux kernel/drivers的程式碼裏可以說是最常見不過的事情

只是指定初始值的方式有它一定的遊戲規則
比如 head.next = &body 這種做法就不允許
對於結構的初始值化是要一個整體的一起進行的

在C裏的說法是結構裏的元素(element)而不能說結構裏的成員(member)
...
瀏覽完整內容,請先 註冊登入會員
系統已重置禁訪用戶到普通用戶和密碼一次
如果瀏覽伊莉時速度太慢或無法連接,可以使用其他分流瀏覽伊莉,www01.eyny.com(02,03)。

使用道具檢舉

CoNsTaRwU 該用戶已被刪除
7
發表於 2017-6-13 11:55 AM|只看該作者
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com
chevylin0802 發表於 2017-6-4 10:50 AM
下載: 訪客無法瀏覽下載點,請先 註冊登入會員

在函式外是可以指定初始值的
在C語言來說這種情形相當常見
尤其是Linux kernel/drivers的程式碼裏可以說是 ...
這種寫法完全可以使用C來編譯, 不需要把檔名改成.cpp
...
瀏覽完整內容,請先 註冊登入會員

點評

chevylin0802 用C寫就比較低級了嗎?如果你是這種態度, 作主管的肯定讓你回家吃自己  發表於 2017-6-13 12:07 PM
如果你忘記伊莉的密碼,請在登入時按右邊出現的 '找回密碼'。輸入相關資料後送出,系統就會把密碼寄到你的E-Mail。

使用道具檢舉

帖子
111
積分
0 點
潛水值
24790 米
8
發表於 2017-8-2 11:35 PM|只看該作者
若瀏覽伊莉的時侯發生問題或不正常情況,請使用Internet Explorer(I.E)。
之後你可以檢查你的編譯環境 有時候只是哪邊沒設定好
要不然你可以試試網路上的c++ shell 可以線上編譯 如果可以執行 代表只是你的環境出問題

使用道具檢舉

您需要登錄後才可以回帖 登錄 | 註冊

Powered by Discuz!

© Comsenz Inc.

重要聲明:本討論區是以即時上載留言的方式運作,對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。切勿上傳和撰寫 侵犯版權(未經授權)、粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
回頂部