存儲和處理是程序設計的基本矛盾。存儲中也有處理,是基本處理,例如,機器指令中的操作碼,C語言內(nèi)置類型中的運算符。隨著處理越來越復雜,程序設計的基本矛盾不斷向前發(fā)展,從而推動了程序語言的發(fā)展。指針(在機器語言中是地址)是存儲和處理的“媒介”、“中介”,是語言的要素,它隨著處理越來越復雜也在同時向前發(fā)展。
1函數(shù)參數(shù)與指針
C語言程序是由函數(shù)構成的,函數(shù)表示處理,實參表示存儲,函數(shù)的指針參量表示存儲和處理的中介,實參初始化形參,函數(shù)通過指針處理存儲中的數(shù)據(jù)。以表1為例。

在下面的函數(shù)原型中,形參pa的聲明是等價的,都表示指針,都是存儲與處理的中介:
int Sum(int *pa,int n);
int Sum(int pa[6],int n);
int Sum(int pa[],int n);
2模塊化設計與指針
一組存儲中的數(shù)據(jù)通過傳址在函數(shù)之間傳遞。如果這組數(shù)據(jù)是“只讀”的,那么如何保證它不被改寫?在模塊化程序設計中,程序按模塊編譯,如果在模塊單獨編譯階段就對“只讀”數(shù)據(jù)的安全性進行控制,即保證“只讀”數(shù)據(jù)把地址傳給的是“只讀”函數(shù),就會減少連接調(diào)試階段的工作負擔。const限定修飾符便是這種控制的工具。
const限定符既可以限定存儲中的“只讀”數(shù)據(jù),也可以限定“只讀”函數(shù)。被const修飾的數(shù)據(jù)稱為const常量,它必須初始化;被const修飾的函數(shù)具有被const修飾的指針參量,這個指針稱為指向const常量的指針,表示函數(shù)對該指針指向的數(shù)據(jù)是“只讀”的。const常量的聲明格式為:
const 類型標識符 變量標識符=初始化數(shù)據(jù);
或
類型標識符 const 變量標識符=初始化數(shù)據(jù);
指向const常量的指針,其聲明格式為:……p>