реклама на сайте
подробности

 
 
> Как сделать смешанный проект с/с++?
juvf
сообщение Apr 8 2010, 03:24
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



есть проект на си для IAR MSP430. создал новый файл. скомпелял - всё работает. указал опцию новому файлу с++. перестало собиратся. Вообщем не возможно из сишных файлов вызвать функции написанные в с++ файлах. для теста написал маленький проект

main.c
Код
#include "io430.h"
#include "test.h"

int main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;
  
  int b;
  b = myCppF(56);

  return b;
}


test.h
Код
int myCppF(int f);


test.cpp
Код
#include "test.h"

int myCppF(int f)
{
    return ~f;
}


опции всего проекта и main.c - си, test.cpp - си++.

при компиляции ошибка линкера
Код
Error[e46]: Undefined external "myCppF" referred in main ( D:\Work\testcpp\Debug\Obj\main.r43 )
Error while running Linker


Как вызвать из сишного файла функцию, определённую в с++?

ps в прикреплении архив с этим тестовым проектом.
Прикрепленные файлы
Прикрепленный файл  testcpp.rar ( 8.91 килобайт ) Кол-во скачиваний: 11
 
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 11th July 2025 - 08:50
Рейтинг@Mail.ru


Страница сгенерированна за 0.01372 секунд с 7
ELECTRONIX ©2004-2016