Включая заголовки C в программе C++

У меня есть программа C++ (.cpp) внутри, который я хочу использовать некоторые функции, которые присутствуют в заголовочных файлах C, таких как stdio.h, conio.h, stdlib.h, graphics.h, devices.h и т.д.

Я мог включать stdio.h библиотеку в своем cpp файле как: #include <cstdio>. Как я включаю другие файлы библиотеки?

Как я добавляю graphics.h библиотеку?

Я использую Microsoft Visual Studio 6.0 Enterprise Edition и также Turbo C++ 3.0.

33
задан Arjun Vasudevan 25 July 2010 в 17:17
поделиться

5 ответов

Для списка заголовков C стандарта C (stdio, stdlib, assert, ...) добавьте c и удалите .h. Например, stdio.h становится cstdio.

Для других заголовков используйте

extern "C"
{
  #include "other_header.h"
}
60
ответ дан 27 November 2019 в 17:32
поделиться

Я не уверен, что именно вам нужно, но если вы хотите использовать старомодные функции C внутри своей программы на C ++, вы можете легко включить их, удалив .h и добавив префикс «c».

например, если вы хотите включить math.h , используйте

#include <cmath>
6
ответ дан 27 November 2019 в 17:32
поделиться

Просто включите их в блок extern «C» , и они должны работать как положено.

3
ответ дан 27 November 2019 в 17:32
поделиться

Вы можете #include их, используя их оригинальные имена. #include отлично работает в C ++.

1
ответ дан 27 November 2019 в 17:32
поделиться
#ifdef __cplusplus
extern "C"
{
#endif

// your functions here for the header

#ifdef __cplusplus
}
#endif

Этот формат должен помочь вам без проблем использовать файлы заголовков как для C, так и для C ++ ...

Надеюсь, это поможет ... :)

35
ответ дан 27 November 2019 в 17:32
поделиться