C語言學習心得(七)

結構體

例如要定義一個人需要複雜的各種變量結合在一起就需要結構體
是我們自己創造出來的類型

struct關鍵字

爲結構體關鍵字即結構體中需要用到struct
用法:
struct Book
{
char name[20];
int price;
}; //;不可缺少
注意:
結構體中不能直接賦值
在主函數中使用
struct Book b1 = {"C語言程序設計", 55};
輸出:
printf("書名:%s\n", b1.name);//C語言程序設計
printf("價格:%d\n", b1.price);//55
b1.name = "java"; //報錯因爲name爲一個數組
同理正常的
char ch[] = "xzc";
ch[] = "abc";//也是報錯數組只能初始化不可以再賦值
b1.price = 10; //可以改變因爲price爲一個變量
printf("價格:%d\n", b1.price);//10
要想改變結構體中的字符串數組需要用到strcpy()函數



















strcpy函數

首先需要頭文件#include <string.h>
用法:
strcpy(name, "c++");//將"c++"賦值給name
具體代碼:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>
int main(){
char ch[] = "xzc";
strcpy(ch, "abc");
printf("%s\n", ch);
return 0;
} //此時結果爲abc
注意:
b1的指針類型與b1一致
struct Book p=&b1;
printf("%s\n", (
p).name);//必須加()不然會報錯不能識別
printf("%d\n", (*p).price);
->:箭頭操作符用法:
printf("%d\n", p->price);//輸出爲10//簡化了上述寫法

















發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章