c語言中結構體巢狀
1樓:網友
struct student
typedef struct student stu; //學生struct class
typedef struct class class; //班void main(void)
/學生陣列。
stu ..
class classes[8]; //班級陣列classes[0].students = students; //初始化班級學生。
classes[1].students = ..
粗略的描述了一下,用指標來做最好!
2樓:網友
struct class two_classes[2];
two_classes[i].a[j] = ..
另外,class中的陣列a的長度需要乙個常量。
3樓:網友
可以;我感覺j應該是常量。
struct class
c語言結構體巢狀的初始化問題
4樓:未來需努力點綴
樓主你好。
對於巢狀結構的初始化 是可以在定義的時候直接初始化的 這個和陣列類似。
具體的實現方法如下:
struct goods_type /*商品結構體型別*/
goods[10]=,}}//這裡只初始化了goos[0]的資料。
希望能幫助你哈。
c語言如何給結構體內的成員賦值
5樓:網友
記憶體溢位,你的指標要指向乙個你的結構體實體(例項)。一般定義乙個指標的意思放的位址,而剛定義的指標放的位址是什麼,這個一般不知道,可以就指向本不屬於自己的位址,結果作業系統就把它給終止或者阻之於外了。
6樓:物理公司的
#include
struct ag,*g=&g;//指標在使用之前要有具體的位址,g是變數,指標指向他就可以了。
int main()
c語言 結構體的賦值
7樓:金色潛鳥
這叫結構體變數宣告與初始化。
按規定,花括號內的 初始化 數值,必須為常量。
struct student a[3]=;錯在初始化用了 非常量。
你的結構陣列a[3] 裡用了變數 zhangsan, 語法上是錯的。
你可以改成:
struct student a[3]=,其中 是給陣列元素 a[0] 初始化,充0 佔位。
宣告完畢,語句部分 另加一句賦值語句: a[0]=zhangsan; 就把zhangsan的資料傳給a陣列的 元素 a[0] 了。
8樓:匿名使用者
從語法來說,這個不是賦值,是初始化。
9樓:網友
前邊沒有結構體的定義部分嗎?
關於c語言結構體巢狀的問題
10樓:
早期純c編譯器要求結構體型別必須寫上struct關鍵字,不能只寫個結構體名。後來c++相容的編譯器則允許寫結構體名就可以了。所以你在巢狀時結構體成員名前寫上struct(struct order order;)就在什麼編譯器下都能通過了……
【c語言共用體】裡面巢狀有結構體,求詳解。高分懸賞。謝謝
11樓:謝應宸
共用體就是享用同一塊記憶體。
在此例中。e的大小為最長元素的大小,也就是結構體out的大小,共兩個int,假設此處int為4位元組。
和和佔用同一塊記憶體,即低4位元組的記憶體,佔用高4位元組記憶體。
然後;和和都為2
那麼和和都變成了4
C語言關於結構體的問題,C語言結構體成員的引用問題
你要傳的是乙個陣列吧,直接這樣寫就行了 void show struct length pointer 使用時就可以按你那樣的直接取下標 point count 呼叫也不對 void show pointer 不知道這裡怎麼錯了,請大家講下 改成show pointer 就行了,還有你之前的定義st...
c語言定義結構體變數,C語言 定義結構體變數
首先,定義一個結構的一般形式為 struct結構名 成員表由若干個成員組成,每個成員都是該結構的一個組成部分。對每個成員也必須作型別說明,其形式為 型別說明符 成員名 成員名的命名應符合識別符號的書寫規定。例如 struct stu 在這個結構定義中,結構名為stu,該結構由4個成員組成。第一個成員...
共用體和結構體的區別,在C語言中,結構體和共用體的概念和兩者的區別是什麼啊?
一 變數長度不同 結構體變數所佔記憶體長度是各成員佔的記憶體長度之和,每個成員分別佔有其自己的記憶體單元。共用體變數所佔的記憶體長度等於最長的成員的長度。二 佔用空間不同 結構體是同時存在的,並一次佔用一段連續的記憶體空間 而共用體則是多個共用成員佔用同乙個開始的記憶體位址,同時他們只能存在一各,所...