Запитання з тегом «extern-c»


4
Поєднання C ++ та C - як працює #ifdef __cplusplus?
Я працюю над проектом, який має багато застарілого коду С. Ми почали писати на C ++ з наміром врешті-решт перетворити застарілий код. Я трохи розгублений у взаємодії C і C ++. Я розумію , що обгортання C коду extern "C"на C ++ компілятор буде спотворювати C кодових імен, але я …

11
Навіщо нам потрібен зовнішній "C" {#include <foo.h>} в C ++?
Для чого нам потрібно використовувати: extern "C" { #include &lt;foo.h&gt; } Конкретно: Коли ми повинні ним користуватися? Що відбувається на рівні компілятора / лінкера, що вимагає від нас його використовувати? Як з точки зору складання / зв’язування це вирішує проблеми, які вимагають від нас його використання?

9
Чому функції C не можна керувати іменами?
Нещодавно у мене було інтерв'ю, і одне запитання було в чому полягає в застосуванні extern "C"коду C ++. Я відповів, що це використовувати функції C у коді C ++, оскільки C не використовує керування іменами. Мене запитали, чому C не використовує керування іменами, і якщо чесно, я не зміг відповісти. …
136 c++  c  name-mangling  extern-c 

4
Виклик функції C із коду C ++
У мене є функція C, яку я хотів би викликати з C ++. Я не міг використати " extern "C" void foo()" підхід, оскільки "" функцію C не вдалося скомпілювати за допомогою g ++. Але він чудово компілюється за допомогою gcc. Будь-які ідеї, як викликати функцію з C ++?
90 c++  c  linux  extern-c 

7
Як викликати функцію C ++ з C?
Я знаю, що це. Виклик функції C з C ++: Якби моя програма була на C ++, і мені довелося викликати функції з бібліотеки, написаної на C. Тоді я б використав //main.cpp extern "C" void C_library_function(int x, int y);//prototype C_library_function(2,4);// directly using it. Це не призведе до перекручування імені, C_library_functionі …
84 c++  c  visual-c++  extern-c 
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.