c++中自定義資料型別還有一種稱為結構型別,並且把該型別的各種資料型別一一整合到其中。
學號 —— 型別
姓名 ——字串
學生年齡——整型
院系——字串
平均成績——浮點型
每個學生的資訊成為了乙個整體,雜亂的資料和每個學生一一對應了起來,方便管理。
如果需要建立學生型別,就可以這樣寫。
#include using namespace std;
struct student
;//這樣有了新的名為student資料型別。
int main()
以上結果表明結構的成員資料是既可以被讀出,也可以被寫入。而且相同型別的結構變數還能夠用賦值操作符」=「相互賦值。
值得注意的是:
1.兩者型別名不同,成員的資料個數和名稱不同,部分成員資料的資料型別相同,是不能通過賦值操作符來相互賦值的。
2.兩者型別名不同,成員的資料個數相同,所有成員資料的資料型別相同,還是不能通過賦值操作符來相互賦值的。
3.兩者型別名不同,成員資料的個數和名稱都相同,所有成員資料的資料型別相同,也還是不能通過賦值操作符來相互賦值的。
當結構體作為引數時,和普通變數一樣,形參的修改是不會對實參產生影響,如果希望在函式中修改實參,可以使用引用的方法,由於結構往往整合了許多成員資料,它的資料量不可小覷。使用值傳遞雖然能夠保護實參不被修改,但是卻或多或少地影響程式的執行效率。所以,一般情況選擇引用的方法。
#include using namespace std;
struct student
;/*void display(student arg);*///結構作為引數
void display(student arg)
arg.age++;
arg.gpa = 99.9f;
}int main()
;//宣告s1,並對s1初始化;
cout << "s1.name的位址" << &s1.name << endl;
display(s1);
cout << "形參被修改後……" << endl;
還有結構體作為返回值時,可以把所有需要返回的變數整合到乙個結構中來,方便,可讀性強。
具體例項如下:
struct student
;void display(student arg)
student initial()
; return s1;
}int main()
自定義資料型別 結構體
陣列是一種資料形式,其特點是多個相同型別的元素集合起來 結構體是另一種重要的資料形式,特點是將不同型別的成員組合起來 陣列和結構體形成了兩種風格迥異的聚合方式,通過他們以及相互組合,巢狀的機制可以構造出複雜的,滿足應用要求的自定義資料型別 結構體允許將不同型別的資料元素組合到一起形成一種新的資料型別...
自定義資料型別
include include using namespace std typedef double weight,tall struct student int main cout for int i 0 i 4 i return 0 貼上正確的輸出 這裡tall和weight都是自己可以輸入的 ...
自定義資料型別 列舉型別
學習了乙個月c語言,卻從來沒有更新過部落格,沒有總結的學習是不完整的。好了,其實我是走c 方向的,就提前看了c 的有關內容。c 除了和c語言一樣常用的資料型別,他們還有允許使用者自己來設計的一些資料型別,比如列舉型資料,結構型資料和鍊錶。我就簡單的總結下列舉型別。列舉型別允許使用者自己來定義一種資料...