MFC und ANSI c?
-
Geh mal unter Projekt -> Einstellungen -> Konfigurationseigenschaften -> C/C++ -> Vorkompilierte Header -> Erstellen/Verwenden eines Vorkompilierten Headers -> Vorkompilierte Header nicht verwenden
Auf Englisch heißt das ganze etwas anderst und unter VC6 musst du vllt. etwas suchen, aber so schaltet man sie prinzipiell aus
-
Ok.. fehler kommen nicht mehr aber irgendwie öffnet der keine meiner Funktionen.
Wie ruf ich zb die main meines c programms auf??
einfach mit main() ?
-
jedes programm hat nur "eine" main funktion
die main funktion wird vom "betriebssystem" aufgerufend.h. wenn du dein programm startest ist die erste und einzige funktion die aufgerufen wird die main funktion (es gibt ausnahmen aber das möcht ich jetzt nicht vertiefen)
erklär mal was du überhaupt machen willst...
oder probier ein minnimalbeispiel-> leeres konsolenprogramm
//main.cpp #include <iostream> using namespace std; extern "C" { int MeineCFunktion(); } int main() { cout << MeineCFunktion() << endl; return 0; }
//MeineCFunktion.c int MeineCFunktion() { return 100; }
-
Schreibe deine C-Funktion als Methode einer Klasse. Dann bindest du die Klasse ein.
-
Unix-Tom schrieb:
Schreibe deine C-Funktion als Methode einer Klasse. Dann bindest du die Klasse ein.
gibts in c neuerdings auch klassen?
-
Super!
Das hat auch funktioniert!Jetzt noch eine letzte Frage:
der algo den ich in meiner c datei hab dauert mitunter sehr lange und ich möchte eine progressbar einbauen die den status anzeigt.
ist es möglich diese mit meinem c programm zu steuern??
-
da fallen mir zwei einfache möglichkeiten ein
variante1:
int MeineCFunktion ( long *pProgress ); //du gibts der c-funktion einen zeiger auf eine variable //die c funktion erhöht den wert immer wieder //in deinem c++ programm läuft ein timer der die variable in nem bestimmten //intervall prüft und die progressbar danach einstellt
variante2:
//du schreibst in deinem c++ programm zwei neue funktionen void SetProgressRange ( long lRange ); void SetProgress ( long lProgress ); //und rufst sie von deiner c funktion aus auf
-
Einfach für jemanden der es kann
1. Wie erstelle ich den einen Timer?
2. Welcher Wert gibt den aktuellen wert der Progressbar an?
(meine bar heißt m_progress)
-
schau dir in der msdn mal die progressbar klasse an
zu den timern benutzt du am besten mal die suchfunktion des forums
-
Das funktioniert irgendwie nicht
ich bekomm immer die nachricht..
error C2660: 'MeineFunktion' : function does not take 2 parameters
obwohl ich im prototyp 2 parameter hab und auch 2 übergebe
-
was erwartest du jetzt als antwort?
wie wärs wenn du prototyp, c-funktion und aufruf in c++ als code postest?