C语言 结构
結構是變量的集合,可以按照對同類型變量的操作方法單獨使用其成員變量.
結構是變量的集合,可以按照對基本數據類型的操作方法單獨使用其成員變量。
1,結構類型聲明
- 和本地變量一樣,在函數內部聲明,只能在函數內部使用
- 一般放在main( )函數之前
struct?結構名字{
? ? ? ? int x;
? ? ? ? int y;
};
struct point{int x;int y;
};
//聲明了一種結構struct point{int x;int y;
}p1,p2;
//聲明了一種結構,并且定義了p1,p2結構變量struct {int x;int y;
}p1,p2;
//定義了p1,p2結構變量
?2,結構變量
每個元素類型可以不同
(1)定義
struct?結構名?變量名;
(2)初始化
#include <stdio.h>
struct date{int year;int month;int day;
};
int main(){struct date today={2014,07,31};//依次賦值printf("%d-%d-%d\n",today.year,today.month,today.day);struct date tod={.year=2014,.month=7};//省略幾個,默認為0printf("%d-%d-%d",tod.year,tod.month,tod.day);return 0;
}2014-7-31
2014-7-0
?(3)結構運算
#include <stdio.h>
struct date{int x;int y;
}p1,p2; //p1,p2是結構變量
int main(){p1=(struct date){5,10}; //強制把大括號內容轉換為定義的結構類型,依次賦值 printf("p1.x = %d p1.y = %d\n",p1.x,p1.y);p2=p1;printf("p2.x = %d p2.y = %d",p2.x,p2.y); //結構變量整體賦值 return 0;
}輸出:
p1.x = 5 p1.y = 10
p2.x = 5 p2.y = 10
(4)結構指針
結構變量的名字并不是結構變量的地址,必須用&運算符
struct date *p=&today;
總結
- 上一篇: 如果你能隐形你最想做的什么?
- 下一篇: 结构与函数、数组