c語(yǔ)言內(nèi)聯(lián)函數(shù) 結(jié)構(gòu)體中的常數(shù)組的地址連續(xù)嗎?
結(jié)構(gòu)體中的常數(shù)組的地址連續(xù)嗎?結(jié)構(gòu)中的成員使用結(jié)構(gòu)分配的內(nèi)存地址,因此結(jié)構(gòu)的成員地址是連續(xù)的。順便說(shuō)一句,你寫(xiě)得不對(duì)。結(jié)構(gòu)成員的初始化必須通過(guò)結(jié)構(gòu)變量執(zhí)行。Struct a{int b[2]int c
結(jié)構(gòu)體中的常數(shù)組的地址連續(xù)嗎?
結(jié)構(gòu)中的成員使用結(jié)構(gòu)分配的內(nèi)存地址,因此結(jié)構(gòu)的成員地址是連續(xù)的。順便說(shuō)一句,你寫(xiě)得不對(duì)。結(jié)構(gòu)成員的初始化必須通過(guò)結(jié)構(gòu)變量執(zhí)行。Struct a{int b[2]int c[2]}STR[2]={1,1},{2,2}從結(jié)構(gòu)變量的賦值可以看出,結(jié)構(gòu)成員就像數(shù)組的元素。先給成員1賦值,然后給成員2賦值。。。先給數(shù)組成員賦值B[0],C[0],然后給B[1],C[1]。如果它們不是連續(xù)的,怎么能這樣分配呢。
此外,同一類型的成員是連續(xù)的,不同類型的成員可能不連續(xù)
如何對(duì)結(jié)構(gòu)體變量進(jìn)行初始化?
初始化結(jié)構(gòu)時(shí)可以設(shè)置初始值。例如,
struct
student
{
]int num
char name[20
}student1=
{10001,“Zhangxin”}]也可以采取將聲明類型與定義變量分離的形式,以便在定義變量時(shí)進(jìn)行初始化:
student student1=
{10001,“Zhangxin”}。
在C語(yǔ)言中,struct是一種數(shù)據(jù)結(jié)構(gòu),是C語(yǔ)言中的一種聚合數(shù)據(jù)類型。
結(jié)構(gòu)可以聲明為變量、指針或數(shù)組,以實(shí)現(xiàn)更復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。結(jié)構(gòu)也是元素的集合。這些元素稱為結(jié)構(gòu)的成員,它們可以是不同的類型。成員通常按名稱訪問(wèn)。