C++ is as close as possible to compatible with C, but no closer. In practice, the major difference is that C++
requires prototypes, and that
f()
declares a function that takes no parameters (in C, a function declared using f()
can be passed an arbitrary number of parameters of arbitrary types).
There are some very subtle differences as well, like
sizeof('x')
is equal to sizeof(char)
in C++ but is equal to
sizeof(int)
in C. Also, C++ puts structure “tags” in the same namespace as other names, whereas C requires an
explicit struct
(e.g., the typedef struct Fred Fred;
technique still works, but is redundant in C++).
No comments:
Post a Comment