予約語
C言語はキーワード (keywords) の他、予約済みの識別子 (reserved identifiers) を持つ。正確な詳細は ISO/IEC 9899 規格を参照のこと。
なお、IBMのz/OSのドキュメントでは「reserved keywords」と呼んでいるが、この用語はCの標準規格に準じたものではなく、厳密には誤りである。
抽象構文的には全く違いは無いにもかかわらず、具象構文・字句構文(lexical syntax)的な違いは見た目の違いとしてわかりやすいこともあり、しばしばプログラマの好みの問題になりやすい。代表的にはブロックが { ... } か begin ... end か、などといった点であるが、そういった要素に記号を多用しがちな言語と、キーワードを多用しがちな言語がある。記号を使うのは簡潔だが、やりすぎると一見では暗号のようになりかねない(PerlやAPLなど)。キーワードを使う言語は冗長だが明示的という点は利点だが、識別子に使える名前が制限され、フォントを変えるなどシンタックスハイライトの支援がないと見た目にも区別しづらい。キーワードは全て大文字とし、識別子には必ず大文字アルファベット以外の文字が含まれるようにする、といった解決法もある。近年はISO 646の国際版に、世界的に7ビットの文字コードは定着したが、以前は、あるいは今もEBCDICは絶滅していないので記号は自由に使えない場合もあった。