C言語ではすべての関数の引数が「値」で受け渡しされる。 これは呼び出された関数には、呼出し元の変数ではなく、 一時変数によってパラメタの値が与えられることを意味する。 したがって呼ばれた関数が呼んだ方の変数を変えることは できない。一方、fortranやPascalのvarパラメタでは、 値ではなく記憶場所の位置「アドレス」が引き渡されるので、 呼ばれたルーチンや関数が局所的なコピーではなく、 元のパラメタにアクセスできる。