The C89 language defines the following 32 keywords.
auto |
break |
case |
char |
const |
continue |
default |
do |
double |
else |
enum |
extern |
float |
for |
goto |
if |
int |
long |
register |
return |
short |
signed |
sizeof |
static |
struct |
switch |
typedef |
union |
unsigned |
void |
volatile |
while |
C++ includes all keywords defined by C89 and adds the following:
asm |
bool |
catch |
class |
const_cast |
delete |
dynamic_cast |
explicit |
export |
false |
friend |
inline |
mutable |
namespace |
new |
operator |
private |
protected |
public |
reinterpret_cast |
static_cast |
template |
this |
throw |
true |
try |
typeid |
typename |
using |
virtual |
wchar_t |
Older versions of C++ also defined the overload keyword, but it is obsolete.
C99 includes all of the keywords defined by C89 and adds the following:
_Bool |
_Complex |
_Imaginary |
inline |
restrict |
A brief synopsis of the keywords follows.