C语言
C语言的特色之一是：语言不负责内存边界检查，这是因为在运行时进行内存边界检查会造成性能问题，与UNIX哲学不符。此特性容易导致缓冲区溢出问题。然而，部分编译器（如英特尔编译器）会出于安全性的考量，提供方法以进行运行时内存边界检查。
编程语言
编程语言的描述一般可以分為及語義。語法是說明編程語言中，哪些符號或文字的組合方式是正確的，語義則是對於編程的解釋。有些語言是用規格文件定義，例如C語言的規格文件也是ISO標準中一部份，2011年後的版本為ISO/IEC 9899:2017，而其他語言（例如Ada或者Perl）有一份文件，视为。