Just nu i M3-nätverket
Gå till innehåll

C++ och TCL


AERO1

Rekommendera Poster

Jag ska sätta ihop ett C++ program och lite TCL koder. Man deklarerar TCL-funktioner så här i c:

int Tcl_AppInit(Tcl_Interp* interp)

{

int status;

 

status = Tcl_Init(interp);

 

if (status != TCL_OK) {

return TCL_ERROR;

}

 

/* Mina TCL koder*/

 

return TCL_OK;

 

}

 

int main(int argc, char** argv)

{

Tcl_Main(argc, argv, Tcl_AppInit);

return argc;

}

 

Men hur och var lägger man dessa i C++? C++ verkar inte förstå char**, till exempel.

Länk till kommentar
Dela på andra webbplatser

prova att byta char** till char* []

 

Är inte alls säker på om det hjälper för det ska ju egentilgen betyda samma sak... Men det är kanske din kompilator som gillar char**...

 

 

 

Länk till kommentar
Dela på andra webbplatser

Vad får du för felmeddelanden när du försöker kompilera/länka? Klistra in allihopa, för felen brukar normalt hänga ihop.

 

 

Länk till kommentar
Dela på andra webbplatser

jerker olofsson

Har inte programmerat TCL applikationer under windows någon gång.

 

Men så som jag ser det så deklarerar man väl ändå inte TCL funktioner så som du skrivit det. Har inte en C TCL funktions koppling argv och argc i parameterlistan också?

 

Typ:

int Tcl_AppInit( TCL_Interp* interp, int argc, char* argv[] );

 

Det skulle kunna vara något mer som saknas också.

 

Är du säker på att det inte är TCL_AppInit (som du tydligen sätter en funktionspekare till i Tcl_Main). Tar funktionspekaren rätt argument? Saknas argv, argc här, så kanske det är de felmedelanden du tolkar som att den inte hittar argv/argc.

 

Om det inte är detta, posta lite mer detaljerade felkoder.

 

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...