首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C語言結構體變量賦值、初始化與成員訪問完全指南

     編輯:關於C語言

成員訪問語法

結構體變量.成員名
// 多級嵌套
boy1.birthday.month

表達式類型即為成員類型,可作左值/右值使用。

賦值方式

1. 逐個成員賦值

boy1.num = 102;
boy1.name = "Zhang ping";
scanf("%c %f", &boy1.sex, &boy1.score);

2. 整體賦值(ANSI C 支持同類型結構體)

boy2 = boy1; // 所有成員逐個拷貝

初始化規則

  • 僅限全局/靜態變量
  • 局部/自動變量不可初始化(C89),C99 支持

全局變量初始化

struct stu { int num; char *name; char sex; float score; } 
boy2, boy1 = {102, "Zhang ping", 'M', 78.5};

靜態局部變量初始化

main() {
    static struct stu { ... } boy2, boy1 = {102, "Zhang ping", 'M', 78.5};
    boy2 = boy1;
    ...
}

輸入輸出示例

printf("Number=%d\nName=%s\n", boy2.num, boy2.name);
printf("Sex=%c\nScore=%f\n", boy2.sex, boy2.score);

關鍵區別

特性字符數組字符指針
存儲字符副本字符串地址
初始化需 static/外部無限制
賦值strcpy 複製直接賦值指針
修改影響獨立共享指向內容

結構體作為異構數據聚合體,其賦值、初始化、成員訪問是 C 語言數據建模的基礎操作。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved