Struct多型用法

2021-10-19 08:39:57 字數 843 閱讀 2657

struct多型用法

struct和class有很多相通之處,都是乙個資料型別的集合。struct也同樣可以實現class的多型用法。

關鍵之處是指標的指向和位址的使用。

#include

struct s1

;struct s2

;int

main()

; s1 *s1 =

&s2.ss1;

s2 *ps2 =

(s2*

)s1;

printf

("s2 = %d\n"

,s2.ss1.temp1)

;printf

("s2 address =%p\n"

,&s2)

;printf

("s2.ss1 address =%p\n"

,&s2.ss1)

;printf

("s2.ss1.temp1 address =%p\n",&

(s2.ss1.temp1));

printf

("ps2 = %d\n"

,ps2->ss1.temp1)

;printf

("ps2 address =%p\n"

,ps2)

;printf

("ps2->ss1 address =%p\n"

,&ps2->ss1)

;printf

("ps2->ss1.temp1 address =%p\n",&

(ps2->ss1.temp1));

return0;

}

c pair(類似struct)用法

標頭檔案 include pair 是 一種模版型別。每個pair 可以儲存兩個值。這兩種值無限制。也可以將自己寫的struct的物件放進去。pairp pairp pairp 都可以。應用 如果乙個函式有兩個返回值 的話,如果是相同型別,就可以用陣列返回,如果是不同型別,就可以自己寫個struct...

union內嵌struct用法

union內嵌struct用法 眾所周知,union為聯合體,struct為結構體。下面根據例項談談用法 include include void main half number strcpy number.i,abcda printf c c n number.half.first,number...

struct的用法和struct的對齊原則

struct在c語言中作為結構體。結構體定義 struct stu 使用 struct stu a 或者省略關鍵字struct stu a 也可以定義和使用同時 struct stu a 在後續使用中,出現結構體型別的地方都可以在前面加struct,用來提醒別人這個型別是自定義結構體 當然也可以省略...