fluffMedlem sedan juli 200268 inlägg Hej.
Jag har fått ett stycke kod som jag ska kompilera på windows m.h.a Visual C++.
Men jag får två fel som jag inte riktigt kan hantera:
main_code.cpp(16) : error C2504: 'timeval' : base class undefined
main_code.cpp(99) : error C2065: 'select' : undeclared identifier
Det sista _tror_ jag är en funktion som finns i unistd.h, men unistd.h headern finns inte att inkludera?
Iaf inte i min standard 6.0 installation av VC++...
Ajja, väldigt tacksam för all hjälp!!
/fluffen
Marcus EMedlem sedan maj 20021 466 inlägg Låt mig gissa, det handlar om sockets?
En sökning i MSDN visar att både strukturen timeval och funktionen select finns deklarerade i Winsock2.h. Inkludera filen och glöm inte att länka med Ws2_32.lib (annars får du unresolved external vid länkningen).
fluffMedlem sedan juli 200268 inlägg Nej, det har faktiskt inget med sockets att göra :-)
Hursomhelst, när jag gjorde som du skrev så blev det "bara" ett fel:
main_code.cpp(19) : error C2065: 'gettimeofday' : undeclared identifier
Och här är rad 19:
void getcurrenttime() { gettimeofday (this,0); };
Marcus EMedlem sedan maj 20021 466 inlägg
fluff skrev:
Nej, det har faktiskt inget med sockets att göra :-)
Konstigt, eftersom både timeval och select är standard-funktioner/strukturer för sockets. Om det inte handlar om sockets, ska du inte inkludera Winsock2.h utan någon annan fil. Fråga mig inte vilken.
Kolla i MSDN vilka funktioner som finns och vilka header-filer de är deklarerade i.
gettimeofday() finns ej, däremot finns time(), den kanske fungerar på liknande sätt.
#include <time.h>
time_t time(
time_t *timer
);
fluffMedlem sedan juli 200268 inlägg Enligt "man gettimeofday":
#include <sys/time.h>
int
gettimeofday(struct timeval *tp, struct timezone *tzp);
Novis som jag är trodde jag det skulle funka med
"time(this);"
Då får jag följande fin-fina fel ->
error C2664: 'time' : cannot convert parameter 1 from 'class zeit *const ' to 'long *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
Marcus EMedlem sedan maj 20021 466 inlägg Så här används funktionen.
time_t ms;
time(&ms);
"The time function returns the number of seconds elapsed since midnight (00:00:00), January 1, 1970, coordinated universal time (UTC), according to the system clock. The return value is stored in the location given by timer. This parameter may be NULL, in which case the return value is not stored."
Jag blir förvirrad av det du skriver. Först skriver du att du använder VC 6.0, antagligen under Windows eftersom VC bara finns för Windows. Sedan skriver du "man gettimeofday", man är ett Unix/Linux-kommando.
Försöker du kompilera Linux-kod under Windows?
fluffMedlem sedan juli 200268 inlägg Busted, ja. Det är frågan om linux-kod, ursäkta om jag inte skrev det direkt, tänkte faktiskt inte på det :O
Men eftersom jag visste det så kollade jag man-sidan för just gettimeofday...
Marcus EMedlem sedan maj 20021 466 inlägg Då måste jag göra dig besviken.
Linux-kod kan man inte kompilera i Windows utan att porta den. Att porta kod kräver att man har bra kunskap om båda operativsystemet. Jag föreslår istället att du försöker hitta en annan kod eller skriva koden själv.