C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
builder+asm
gvg
Отправлено: 21.01.2006, 16:24


Машинист паровоза

Группа: Участник
Сообщений: 222



Такая проблема:
Хочу к своему классу строки (не VCL) добавить метод FormatFloat.
Использую ffmt.asm из исходников vcl (BCB 5). Включаю его в проект, объявляю нужную мне
FloatToTextFmt как в sysutils.hpp
CODE

 int __fastcall FloatToTextFmt(char * Buffer, const void *Value, int ValueType, char * Format);

Использую:
CODE

#pragma argsused
int main(int argc, char* argv[])
{
 using namespace std;

 long double ex = 123.456;
 char Buffer[256];
 FloatToTextFmt( Buffer, &ex, 0, "0.00" );
 cout << Buffer;
 return 0;
}

Получаю ошибку Unresolved external '__fastcall FloatToTextFmt(char *, const void *, int, char *)
Не находит, короче. Что не так у меня?
__Cheat3r
Отправлено: 21.01.2006, 18:17


Станционный диспетчер

Группа: Участник
Сообщений: 110



QUOTE (gvg @ 21/01/2006, 16:24)
объявляю нужную мнеFloatToTextFmt как в sysutils.hpp

Прости , но где ты его обьявляешь то ?
И , где include?
gvg
Отправлено: 21.01.2006, 19:43


Машинист паровоза

Группа: Участник
Сообщений: 222



Либо в том-же *.cpp (где main) как
CODE
extern int __fastcall FloatToTextFmt(char * Buffer, const void *Value, int ValueType, char * Format);

либо в отдельном *.h
CODE
int __fastcall FloatToTextFmt(char * Buffer, const void *Value, int ValueType, char * Format);

Без разницы, результат один. #include присутствует как надо... (во втором случае)
Проблема при линковке, а не компиляции.
gvg
Отправлено: 23.01.2006, 12:46


Машинист паровоза

Группа: Участник
Сообщений: 222



А что, профи, никто не использовал asm-файлы в своих проектах?
vvoid
Отправлено: 23.01.2006, 15:19


Машинист паровоза

Группа: Участник
Сообщений: 171



QUOTE (gvg @ 23/01/2006, 12:46)
А что, профи, никто не использовал asm-файлы в своих проектах?

Я не отношу себя к профи, но смею задать вопрос: А ЗАЧЕМ???
gvg
Отправлено: 23.01.2006, 16:12


Машинист паровоза

Группа: Участник
Сообщений: 222



QUOTE (vvoid @ 23/01/2006, 15:19)
Я не отношу себя к профи, но смею задать вопрос: А ЗАЧЕМ???

Да за те-же, хотя бы, зачем я и хочу использовать. В конечном итоге, чтобы в dll не тащить всю vcl, если используешь там что-то вроде AnsiString.

Вернуться в Вопросы программирования в C++Builder