constの[C]言語の使用法

データを保護するために使用することが1.const:例の手順を以下に示し、配列show_arrayその値関数を変更しないで保護されていてもよいです。

1つの#include <stdio.hの>
 2  の#define SIZE 5
 3  ボイド show_arry(CONST  ダブル AR []、int型N);
4  空隙 mult_array(二重 AR []、int型、N 二重MULT)を、
5  INTメイン(ボイド6  {
 7      ダブルディップ[SIZE] = { 20.03.25.363.06.3 }。
8  
9      のprintf(" オリジナルディップアレイ:\ nは" );
 10      show_arry(ディップ、SIZE);
 11      mult_array(ディップ、SIZE、5.0 );
 12      のprintf(" mult_array(callling後ディップアレイ):の\ n " );
 13      show_arry(ディップ、SIZE);
 14  
15      リターン 0 ;
 16  }
 17  
18  
19  空隙 show_arry(CONST  ダブル AR []、int型N)
 20  {
 21      INT Iを、
 22      のために(i = 0 ; iがn <; iは++ 23         printf(" %の8.3f " 、AR [I])。
24      のputchar(' の\ n ' );
25  }
 26  
27  空隙 mult_array(二重 Arは[]、int型 nは、ダブルMULT)
 28  {
 29      INT I。
30      のために(i = 0 ; iがn <; I ++ 31          AR [I] * = MULT。
32  
33 }
 
2.
ダブル料金= {} 2.3,3.1,56.0; [3]
CONST * PD =空ダブル;
、それはPDポイント値を変更するために使用することができない場合:
* PD = 29.89; //ができない
PDを[2] = 22.13。 //許容
速度[0] = 22.33は、レートが、constと定義されていないので、許容//
しかし、それはつまり、どこか別の場所へのポインタを許可しない:
PDの++を; //許可します
3.一般に、データを変更しないポインタの機能を表すために使用されるCONST関数パラメータへのポインタ:
ボイドshow_array(CONST *ダブルのAr、N-INT);
1)またはポイントに初期化データのconstのconst CONSTデータのアドレス。または法的であるポインタに値を割り当てます。
2)のみアドレスデータは、通常の非constポインタに割り当てられることができます。
 
4.
[3]をダブル料金= {} 2.3,3.1,56.0、
ダブルPC =定数*空;
宣言し、他の場所、つまりすることはできませんポインタを初期化:
PCが++; //許可されていません
、それは、そのポイントを変更することができます値:
* PC = 50.2は//許可
 
5.
ダブル料金= {} 2.3,3.1,56.0 [3]、
CONST =鉛*空ダブルCONST;
いずれ変化を指すポインタの値も、すなわち、その点を変更
PB =&レート[1]。 //許可されていません
* PB = 3.0; //許されません

おすすめ

転載: www.cnblogs.com/bingger/p/11110275.html