У меня странная проблема.Когда я пытаюсь скомпилировать приведенный ниже код, он работает без сбоев, как и ожидалось:
#include <iostream>
#include <Windows.h>
int main(){
FILE *f = fopen("trystl.geo","w");
fprintf(f,"Merge \"trystl.stl\";");
fprintf(f,"\n");
fprintf(f,"Surface Loop(2) = {1};");
fprintf(f,"\n");
fprintf(f,"Volume(3) = {2};");
fclose(f);
return 0;
}
Но когда я пытаюсь подключить эту программу к кнопке с пользовательским интерфейсом FLTK, она выдает ошибку выполнения утверждения.Сегмент моего кода:
void UserInterface::cb_m_BtnSTLToGEOConverter_i(Fl_Button*, void*){
//OnSTLToGEOConvert();
FILE *f = fopen("trystl.geo","w");
fprintf(f,"Merge \"trystl.stl\";");
fprintf(f,"\n");
fprintf(f,"Surface Loop(2) = {1};");
fprintf(f,"\n");
fprintf(f,"Volume(3) = {2};");
fclose(f);
}
void UserInterface::cb_m_BtnSTLToGEOConverter(Fl_Button* o, void* v){
((UserInterface*)(o->parent()->parent()->parent()->parent()->parent()->parent()->parent()->user_data()))->cb_m_BtnSTLToGEOConverter_i(o,v);
}
Когда пользователь нажимает кнопку, я хочу, чтобы программа создала файл с именем trystl.geo и выполнила указанные операции.Но при компиляции и открытии программы и нажатии на кнопку появляется:
Ошибка отладки!
Программа: * ....... \ src \ fprintf.c Строка 55:
Выражение: (str! NULL)
отменить попытку или проигнорировать ...
Я использую Visual Studio 2010.