Когда использовать extern «C»?

Я знаю, как использовать extern «C» , но каковы условия, когда вы должны его использовать?

extern «C» сообщает компилятору C ++ не выполнять никаких имен- искажение кода в фигурных скобках. Это позволяет вам вызывать функции C из в C ++.

Например:

#include <string.h>

int main()
{
    char s[] = "Hello";
    char d[6];

    strcpy_s(d, s);
}

Хотя это нормально компилируется на VC ++. Но иногда это пишут так:

extern "C" {   
#include <string.h>  
}

Я не вижу в этом смысла. Можете ли вы привести реальный пример, где требуется extern "C" ?

5
задан Jonathan Leffler 30 May 2016 в 05:56
поделиться