Перейти к содержанию
    

Совместный код C C++ в эклипсе как сделать?

сделал в винде тестовую прогу, из программы Си вызывыается функция на С++

переношу то же самое в STM овскую студию - ошибка.

Как решить эту проблему?

функция на C++ :


 

extern "C" u8 get_temp(s16 temp, s16 * value)
{
    s16 buffer = temp;


    *value = buffer >> 4;
    *value *=  10;
    *value >>= 4;  

    return 0;
}

в заголовке описана так:

#ifndef _FUNC_H
#define _FUNC_H

#include "navdata.h"

#ifdef __cplusplus
extern "C"{
#endif 

u8 get_temp(s16 temp, s16 * value);

#ifdef __cplusplus
}
#endif


#endif /* func.h  */

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 minute ago, inventor said:

смотрю в папке debug где объектники - он ее даже не компилирует

Покажите текст ошибки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2021-07-15_14-18-40.thumb.png.075cc3094c9caca43d08aa22f2546acd.png

rtc_get_str_time лежит в файле cpp - он его скомпилил
я посмотрел объекник - имя функции не испорчено,

но линковать не хочет

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Значит объявления не видно в точке вызова. Заголовочный файл с объявлением (прототипом) подключите.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 часов назад, inventor сказал:

функция на C++ :

Попробуйте в .cpp файле убрать из ОПРЕДЕЛЕНИЯ функции extern "C" 

Оставить это только в объявлении (прототипе) в заголовочном .h файле.

6 часов назад, inventor сказал:

но линковать не хочет

И что за ошибку выдает линкер?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

14 hours ago, x893 said:

Eclise

File

Convert to C++

не работает так

в этом случае выдает кучу ошибок которые Си пропускает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 minutes ago, inventor said:

не работает так

в этом случае выдает кучу ошибок которые Си пропускает

Ну значит не судьба. У меня проблем нет с этим.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...