Область применения библиотек C в C ++ - <X.h> vs <cX>

Язык программирования C ++: Special Edition утверждает на странице 431, что ...

For every header < X.h > defining part of the C standard library in the global namespace and also in namespace std, there is a header < cX > defining the same names in the std namespace only.

Однако, когда я использую заголовки C в стиле <cX>, мне не нужно определять пространство имен. Например...

#include <cmath>
void f() {
  double var = sqrt( 17 );
}

Это будет хорошо скомпилировано. Несмотря на то, что в книге сказано, что использование заголовка <cX> определяет имена только в пространстве имен std, вы можете использовать эти имена без определения пространства имен. Что мне здесь не хватает?

Постскриптум Использование компилятора GNU.GCC

Ответы на вопрос(5)

Ваш ответ на вопрос