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

伊莉討論區

搜索
請尊重及感激所有版主付出和奉獻尊貴會員無限下載附件安全提問(回答) 和 永久尊貴會員 事宜
七龍珠overlordvr高中國中
killzoneipzz 163killerzontr騎士ntr offi女子全員女子全員

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

[繁]THE NEW GATE 06-

[繁]轉生貴族憑鑑定技

華為手機 AI讓女生一

[繁]魔法科高中的劣等

✡ 仙武傳・58・2023.

[繁]月光下的異世界之
C & C++ 語言C# 語言Visual Basic 語言PHP 語言JAVA 語言
查看: 2374|回復: 7
打印上一主題下一主題

[問題]關於struct陣列[複製鏈接]

st474ddr 該用戶已被刪除
跳轉到指定樓層
樓主
發表於 2016-5-6 10:30 PM|只看該作者|倒序瀏覽
如果我定義一個
struct A{
int x;
int y;
} a[100];
那究竟這 a[100]會是一個一維陣列還是二維的呢?
畢竟他存了兩個值
小弟有此一問
分享分享0收藏收藏0支持支持0
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。

使用道具檢舉

st474ddr 該用戶已被刪除
頭香
發表於 2016-5-6 10:43 PM|只看該作者
因為我碰到這樣的問題
(我對struct還非常不熟練)
code提供:
#include <stdio.h>
typedef struct Shape
{
    int height;
    int width;
} shape;

main()
{

    int n, num, i, sum, j;
    shape s[12001];
    scanf("%d", &num);
    while(num--)
    {
        scanf("%d", &n);
...
瀏覽完整內容,請先 註冊登入會員
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com

使用道具檢舉

  尊貴會員

Melty Snow  雪靈

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

帖子
3224
積分
24366 點
潛水值
77410 米
3
發表於 2016-5-7 12:25 AM|只看該作者
一維 index 從 0 到 99
想像成 x = 0, x = 1, ... , x = 99 對應到 a[0] ~ a[99]
二維的話,是像這樣
a[100][50]
想像成一個平面,x = 0, y = 0 對應到 a[0][0] ...


if(s[i].width = s[i].height)

判斷等於是 == 不是 =
= 是指定值給他
會變成把 s[i].height 的值給 s[i].width
然後判斷 s[i].width 是否為 0 值
Melty Snow [雪靈]

使用道具檢舉

st474ddr 該用戶已被刪除
4
發表於 2016-5-10 06:31 PM|只看該作者
若有安裝色情守門員,可用無界、自由門等軟件瀏覽伊莉。或使用以下網址瀏覽伊莉: http://www.eyny.com:81/index.php
snowflying 發表於 2016-5-7 12:25 AM
下載: 訪客無法瀏覽下載點,請先 註冊登入會員

一維 index 從 0 到 99
想像成 x = 0, x = 1, ... , x = 99 對應到 a[0] ~ a[99]
二維的話,是像這樣

謝謝snowflying大大
但是關於第一個問題好像沒有回答到QQ
...
瀏覽完整內容,請先 註冊登入會員

使用道具檢舉

  尊貴會員

Melty Snow  雪靈

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

帖子
3224
積分
24366 點
潛水值
77410 米
5
發表於 2016-5-10 10:04 PM|只看該作者
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。
st474ddr 發表於 2016-5-10 06:31 PM
下載: 訪客無法瀏覽下載點,請先 註冊登入會員

謝謝snowflying大大
但是關於第一個問題好像沒有回答到QQ
我的意思是

一般來說,維度是指陣列的,不會去計算裡面的成員
...
瀏覽完整內容,請先 註冊登入會員





Melty Snow [雪靈]
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com

使用道具檢舉

Rank: 2Rank: 2

帖子
582
積分
345 點
潛水值
12315 米
6
發表於 2016-5-15 07:54 AM|只看該作者
分享使你變得更實在,可以使其他人感到快樂,分享是我們的動力。今天就來分享你的資訊、圖片或檔案吧。

使用道具檢舉

Rank: 3Rank: 3Rank: 3

帖子
760
積分
1336 點
潛水值
23280 米
7
發表於 2016-6-12 04:46 PM|只看該作者
這樣宣告為一維的結構陣列,代表你有100個結構,每個結構裡有2個成員,
例如:
struct 麵包{麵粉, 糖} ary[100];所以現在我有100個麵包,每個麵包的材料都有麵粉和糖
不知道我這樣形容,你了解了嗎?
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。

使用道具檢舉

帖子
632
積分
0 點
潛水值
12325 米
8
發表於 2016-6-18 02:17 PM|只看該作者
所有積分大於負-100的壞孩子,將可獲得重新機會成為懲罰生,權限跟幼兒生一樣。
一維陣列

只是這陣列裡所使用的memory size 較大一點

以這2種struct為例:

struct A {
int a; // 佔 32bit (8 bytes)
};

struct B {
char b; // 佔 8bits (1 byte)
int c; // 佔 32bit (8 bytes)
};

在實際使用到的 memory 上,
A是用了 8bytes,
B是用了 1byte +8 bytes = 9 bytes ,
但OS為32/64 bit的話, 就會再做對齊(alignment)的動作,
...
瀏覽完整內容,請先 註冊登入會員

使用道具檢舉

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

Powered by Discuz!

© Comsenz Inc.

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