2017-04-18 11 views
-3

Cメモリの変数がその変数に割り当てられているかどうかわからない。私が変数メモリがその変数に割り当てられていると宣言していますが、今日私はいくつかのサイトで調べました。我々が宣言するとき。 私に助けをすることができますこの疑いを明らかにする。Cの可変宣言コンセプト

+0

どのようなサイトが?そして彼らは何を正確に言ったのですか? – StoryTeller

答えて

2

宣言では、変数にメモリを割り当てることはありませんが、一般的にコンパイラに「型」(要件)を知らせることです。

対照的に、定義は実際のメモリが割り当てられる場所です。

これは、同じ変数を(以前の型と競合しない限り)複数回宣言できますが、複数回定義することはできません。

3

変数の宣言は、変数が存在すること、変数の種類、およびその名前のみをコンパイラに通知します。

一方、変数の定義は、実際には変数にスペースを割り当てます。

しかし、変数宣言と定義が同時に発生することがよくあります。そのため、2つのことについて混乱が起きることが多く、その理由はしばしば「宣言」と呼ばれます。脚注として


、上記本当に完全な話ではありません、宣言または定義のいずれかになります仮定義のようなものもあります。これは、初期化を行わないグローバル変数の場合は通常です。