在C語言中,結構體嵌套的賦值可以使用兩種方式:點運算符和賦值運算符。
#include <stdio.h>
// 定義內層結構體
struct InnerStruct {
int innerValue;
};
// 定義外層結構體,包含內層結構體作為成員
struct OuterStruct {
int outerValue;
struct InnerStruct inner;
};
int main() {
// 創建外層結構體對象
struct OuterStruct outer;
// 給外層結構體成員賦值
outer.outerValue = 10;
// 給內層結構體成員賦值
outer.inner.innerValue = 20;
// 打印結果
printf("Outer value: %d\n", outer.outerValue);
printf("Inner value: %d\n", outer.inner.innerValue);
return 0;
}
#include <stdio.h>
// 定義內層結構體
struct InnerStruct {
int innerValue;
};
// 定義外層結構體,包含內層結構體作為成員
struct OuterStruct {
int outerValue;
struct InnerStruct inner;
};
int main() {
// 創建外層結構體對象
struct OuterStruct outer1;
// 給外層結構體成員賦值
outer1.outerValue = 10;
outer1.inner.innerValue = 20;
// 創建新的外層結構體對象
struct OuterStruct outer2;
// 使用賦值運算符將outer1的值賦給outer2
outer2 = outer1;
// 打印結果
printf("Outer value: %d\n", outer2.outerValue);
printf("Inner value: %d\n", outer2.inner.innerValue);
return 0;
}
無論是使用點運算符還是賦值運算符,都可以對結構體嵌套進行賦值操作。