欢迎来到天天文库
浏览记录
ID:38869563
大小:342.81 KB
页数:22页
时间:2019-06-20
《《C指标结构简介》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C++指標結構簡介1.指標(Pointer)2.結構(Structure)11.指標之宣告資料型態*變數名稱;//星號在變數之左上方如int*a,*b,*c;資料型態*變數名稱;//星號在資料型態之右上如int*a,*b,*c;宣告int*ptr後變數ptr稱為指標變數,它是儲存『位址的值』,*ptr為內容,其意義如下:*ptr:表ptr位址內所指示之內容。ptr:表儲存位址。2位址運算子&一般變數皆為靜態的資料,若欲取得該變數之位址,只能使用位址運算子(AddressOperator)「&」(Ampersand)inta
2、=10;cout<<&a;//輸出位址00A5cout<3、ptr=&a;//ptr存變數a的位址將a之位址設定給ptr,接著兩變數皆指向同一塊記憶體,變數利用「&」取得位址。10a*ptr5指標型態之一致性指標型態之一致性:指向已存在之指標變數應與其資料型態一致,因不同型態之指標是無法轉換的。列印數值(內容):一般變數cout<4、一或減一之運算。如:int*ptr,a[3]={10,20,30};ptr=&a;若&a之位址為「0064FE00」,則ptr亦為「0064FE00」。ptr++;//ptr就變為「0064FE04」7指標與陣列指標與陣列兩者具有相當的密切關係,如:intstr[30],*ptr;ptr=str;或ptr=&str[0];表ptr已被設定到str陣列第一個元素,因此要存取第五個元素可以如下寫法:str[4];*(str+4);*(ptr+4);8new與delete之使用分配或釋放記憶體之敘述格式:指標變數=new資料型態5、[大小](初值);//配置delete[]指標變數;//釋放配置記憶體配置單一記憶體。配置單一記憶體並給予初值配置多個記憶體:以指標當陣列使用,有固定大小及彈性大小。9配置單一記憶體指標變數=new資料型態;delete指標型態;如:double*f;f=newdouble;//配置一個浮點數空間deletef;//釋放一個空間,在delete後不必加入[]10配置單一記憶體並給初值指標型態=new資料型態(初值);delete指標型態;如:int*a;a=newint(10);//則*a之值為10,而非設定10個int空6、間或int*a=newint(10);//宣告,配置與初值合併11配置多個記憶體指標變數=new資料型態[大小];delete[]指標變數;如:int*a;a=newint[5];//配置5*4=20Bytes給a,固定大小。delete[]a;//釋放a之空間122.結構(Structure)將不同資料型態結合在一起的資料紀錄稱為結構(Structure)。組成結構之變數稱為成員(Member),元素(Element)或欄位(Field)。資訊的組成:最基礎單位為字元,由許多不同的字元組成欄位,多個欄位組成結構,許多相同7、之結構資料集合成檔案,不同的檔案再集合為一資料庫。structstruct-type-name{typemember-name1;typemember-name2;typemember-name3;}structure-variable_1={成員初始值},structure-variable_2;13結構之定義structrec{intchi,eng,math,total;floatave;}Bill={60,50,80,0,0},Mary;recMonica={90,50,70,0,0};Mary={80,60,70,8、0,0};14一般變數結構之存取存取結構內之欄位或成員之方式只要在結構變數與欄位間加一小數點”‧”即可,稱點運算子(dotoperator)。recBill;//一般變數結構宣告Bill.chi=90;//設定Bill結構成員chi的值cin>>Bill.eng;//輸入Bill結構成員eng的值Bil
3、ptr=&a;//ptr存變數a的位址將a之位址設定給ptr,接著兩變數皆指向同一塊記憶體,變數利用「&」取得位址。10a*ptr5指標型態之一致性指標型態之一致性:指向已存在之指標變數應與其資料型態一致,因不同型態之指標是無法轉換的。列印數值(內容):一般變數cout<4、一或減一之運算。如:int*ptr,a[3]={10,20,30};ptr=&a;若&a之位址為「0064FE00」,則ptr亦為「0064FE00」。ptr++;//ptr就變為「0064FE04」7指標與陣列指標與陣列兩者具有相當的密切關係,如:intstr[30],*ptr;ptr=str;或ptr=&str[0];表ptr已被設定到str陣列第一個元素,因此要存取第五個元素可以如下寫法:str[4];*(str+4);*(ptr+4);8new與delete之使用分配或釋放記憶體之敘述格式:指標變數=new資料型態5、[大小](初值);//配置delete[]指標變數;//釋放配置記憶體配置單一記憶體。配置單一記憶體並給予初值配置多個記憶體:以指標當陣列使用,有固定大小及彈性大小。9配置單一記憶體指標變數=new資料型態;delete指標型態;如:double*f;f=newdouble;//配置一個浮點數空間deletef;//釋放一個空間,在delete後不必加入[]10配置單一記憶體並給初值指標型態=new資料型態(初值);delete指標型態;如:int*a;a=newint(10);//則*a之值為10,而非設定10個int空6、間或int*a=newint(10);//宣告,配置與初值合併11配置多個記憶體指標變數=new資料型態[大小];delete[]指標變數;如:int*a;a=newint[5];//配置5*4=20Bytes給a,固定大小。delete[]a;//釋放a之空間122.結構(Structure)將不同資料型態結合在一起的資料紀錄稱為結構(Structure)。組成結構之變數稱為成員(Member),元素(Element)或欄位(Field)。資訊的組成:最基礎單位為字元,由許多不同的字元組成欄位,多個欄位組成結構,許多相同7、之結構資料集合成檔案,不同的檔案再集合為一資料庫。structstruct-type-name{typemember-name1;typemember-name2;typemember-name3;}structure-variable_1={成員初始值},structure-variable_2;13結構之定義structrec{intchi,eng,math,total;floatave;}Bill={60,50,80,0,0},Mary;recMonica={90,50,70,0,0};Mary={80,60,70,8、0,0};14一般變數結構之存取存取結構內之欄位或成員之方式只要在結構變數與欄位間加一小數點”‧”即可,稱點運算子(dotoperator)。recBill;//一般變數結構宣告Bill.chi=90;//設定Bill結構成員chi的值cin>>Bill.eng;//輸入Bill結構成員eng的值Bil
4、一或減一之運算。如:int*ptr,a[3]={10,20,30};ptr=&a;若&a之位址為「0064FE00」,則ptr亦為「0064FE00」。ptr++;//ptr就變為「0064FE04」7指標與陣列指標與陣列兩者具有相當的密切關係,如:intstr[30],*ptr;ptr=str;或ptr=&str[0];表ptr已被設定到str陣列第一個元素,因此要存取第五個元素可以如下寫法:str[4];*(str+4);*(ptr+4);8new與delete之使用分配或釋放記憶體之敘述格式:指標變數=new資料型態
5、[大小](初值);//配置delete[]指標變數;//釋放配置記憶體配置單一記憶體。配置單一記憶體並給予初值配置多個記憶體:以指標當陣列使用,有固定大小及彈性大小。9配置單一記憶體指標變數=new資料型態;delete指標型態;如:double*f;f=newdouble;//配置一個浮點數空間deletef;//釋放一個空間,在delete後不必加入[]10配置單一記憶體並給初值指標型態=new資料型態(初值);delete指標型態;如:int*a;a=newint(10);//則*a之值為10,而非設定10個int空
6、間或int*a=newint(10);//宣告,配置與初值合併11配置多個記憶體指標變數=new資料型態[大小];delete[]指標變數;如:int*a;a=newint[5];//配置5*4=20Bytes給a,固定大小。delete[]a;//釋放a之空間122.結構(Structure)將不同資料型態結合在一起的資料紀錄稱為結構(Structure)。組成結構之變數稱為成員(Member),元素(Element)或欄位(Field)。資訊的組成:最基礎單位為字元,由許多不同的字元組成欄位,多個欄位組成結構,許多相同
7、之結構資料集合成檔案,不同的檔案再集合為一資料庫。structstruct-type-name{typemember-name1;typemember-name2;typemember-name3;}structure-variable_1={成員初始值},structure-variable_2;13結構之定義structrec{intchi,eng,math,total;floatave;}Bill={60,50,80,0,0},Mary;recMonica={90,50,70,0,0};Mary={80,60,70,
8、0,0};14一般變數結構之存取存取結構內之欄位或成員之方式只要在結構變數與欄位間加一小數點”‧”即可,稱點運算子(dotoperator)。recBill;//一般變數結構宣告Bill.chi=90;//設定Bill結構成員chi的值cin>>Bill.eng;//輸入Bill結構成員eng的值Bil
此文档下载收益归作者所有