struct 宣告方式如下:
struct 結構名稱{
資料型態 成員名稱1;
資料型態 成員名稱2;
.
.
}
-----------------------------------------------------------------------------------------------------------------------------
#include<iostream>
using namespace std;
int main(void){
string yes="";
struct CUP
{
int num;
char cup[6];
};
struct CUP Marily={33,"F CUP"};
struct CUP Leah ={30,"C CUP"};
cout << Marily.num << Marily.cup << endl;
cout << Leah.num << Leah.cup << endl;
do{
cout << "Marily是否要變大[Y/N]: ";
cin >> yes;
Marily.num= Marily.num+1;
cout << Marily.num << Marily.cup << endl;
}while(yes =="y" || yes == "Y");
do{
cout << "Leah是否要變大[Y/N]: ";
cin >> yes;
Leah.num= Leah.num+1;
cout << Leah.num << Leah.cup << endl;
}while(yes =="y" || yes == "Y");
system("PAUSE");
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------
執行結果:
-----------------------------------------------------------------------------------------------------------------------------
指標
指標是什麼呢?你可以把(ptr)想成我的金手指,(*ptr)是你的眼睛。你不知道女生的乳頭長在身體的哪裡?但是當我的金手指(ptr)指向她的乳頭時(i or array),你的眼睛(*ptr)朝我的(ptr)金手指看去,就看到乳頭了。
結論:
透過我的金手指(ptr)取位置,你的眼睛(*ptr)就可以看到想看的資料內容。
指標宣告:
int *ptr; //宣告一個指標
ptr =NULL; //將目前指標變數的記憶體空間內容清除
1. 取址運算子 - &
int i,*ptr;
i=10;
ptr=&i; //ptr只到i的位置
2. 間接運算子 - *
int i,j,*ptr;
i=10;
ptr=&i; //將i的位置放入ptr
j=*ptr+10; //透過*取得資料內容加10再存入j
-----------------------------------------------------------------------------------------------------------------------------
範例:
#include<iostream>
using namespace std;
int main(){
int *ptr; //宣告一個叫 ptr的指標變數
int dickLength[5] = {13,14,15,16,17}; //長度(cm)
ptr = dickLength; //我的金手指指向那些東西
for(int i=0;i<5;i++,ptr++) //ptr++ 指標移到下一個陣列元素的位置
if (*ptr < 15)
cout << *ptr << "cm 太短" << endl; //(*ptr)眼睛看到金手指(ptr)指的東西的長度
system("PAUSE");
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------
執行結果:
-----------------------------------------------------------------------------------------------------------------------------