GeirGrusom Skrevet 7. desember 2009 Del Skrevet 7. desember 2009 Synes mappen din ser litt rar ut: C:\Documents and Settings\Administrator\Mine dokumenter\Visual Studio 2008\Projects\Project1\test\debug\test.exe Programmet pleier å bli lagt under [solution]\[Project]\Debug\ Hvorfor heter det ikke test\test\debug\test.exe? Lenke til kommentar
Cynon Skrevet 7. desember 2009 Del Skrevet 7. desember 2009 Synes mappen din ser litt rar ut:C:\Documents and Settings\Administrator\Mine dokumenter\Visual Studio 2008\Projects\Project1\test\debug\test.exe Programmet pleier å bli lagt under [solution]\[Project]\Debug\ Hvorfor heter det ikke test\test\debug\test.exe? Vel jo det er akkurat det jeg syntes også. For slik det ser ut som er at alt går under prosjektet Project1 og at det er umulig å nullstille det på kompilatoren. Jeg brukt en eldre versjon av kompilatoren på en ofentlig pc lenge og da jeg lastet ned en litt nyere versjon på min private pc så virker det som om gullfiskhukommelsen min har slått til, for jeg klarer ikke å huske hviken type prosjekt som jeg valgte før heller. Lenke til kommentar
MJaVa Skrevet 12. januar 2010 Del Skrevet 12. januar 2010 (endret) Hei. Nå har jeg banka hue nok i veggen! Men min java-bakgrunn skjønner jeg ikke hvorfor ikke dette vil kompilere: $ g++ main.cpp /tmp/ccmO7fVQ.o: In function `main': main.cpp:(.text+0x15): undefined reference to `Class::Class(int)' collect2: ld returned 1 exit status main.cpp 1 #include "class.h" 2 3 int main() 4 { 5 Class tmp(2); 6 }; class.h 1 class Class 2 { 3 public: 4 Class(int num); 5 }; class.cpp 1 #include "class.h" 2 3 using namespace std; 4 5 Class::Class(int num) 6 { 7 int a = 1; 8 } Var egentlig en større kode, men jeg har fjernet alt som ikke er relevant for å isolere problemet. Edit: Rettet typo i main.cpp Endret 12. januar 2010 av MJaVa Lenke til kommentar
GeirGrusom Skrevet 12. januar 2010 Del Skrevet 12. januar 2010 "Undefined reference" betyr at definisjonen mangler. Men det ser ikke ut til å være tilfellet her, men du har derimot definert den to ganger (i main.cpp og class.cpp) Fjern den fra main.cpp Lenke til kommentar
MJaVa Skrevet 12. januar 2010 Del Skrevet 12. januar 2010 Oi, var bare en kopierings feil. Den rette main.cpp er: 1 #include "class.h" 2 3 int main() 4 { 5 Class tmp(2); 6 }; Lenke til kommentar
GeirGrusom Skrevet 12. januar 2010 Del Skrevet 12. januar 2010 Ah, da ser jeg feilen. Du kompilerer bare main.cpp. Du må også kompilere class.cpp. g++ class.cpp main.cpp Lenke til kommentar
MJaVa Skrevet 12. januar 2010 Del Skrevet 12. januar 2010 Fantastisk. Takk Er det mulig å skalle hue så mye for en så liten og "opplagt" ting? Lenke til kommentar
GeirGrusom Skrevet 12. januar 2010 Del Skrevet 12. januar 2010 Det hender at jeg sitter og debugger en feil i en halvtime, og så er det en eller annen utrolig tullete feil jeg har gjort. Jeg postet en tråd på forumet om et .NET program der teksten som ble tegnet så helt rar ut... jeg satt møkklenge og funderte på hva feilen var. Selvsagt var det noe flaut dumt som var i veien. Jeg hadde satt tekstrenderingen inne i en løkke, når den selsvagt skulle stå på utsiden, så teksten ble rendret 8 ganger over hverandre som gjorde at teksten så helt rar ut (pga anti-alias) Men det tok kjempelang tid før jeg så feilen. Lenke til kommentar
TheMaister Skrevet 14. januar 2010 Del Skrevet 14. januar 2010 Har flere ganger sett meg selv sitte lenge og debugge setter SIGSEGV, og ser ... char *buffer = NULL; ... kode ... strcpy(buffer, "stuff here lol"); Good times ... Lenke til kommentar
Senyor de la guerra Skrevet 20. januar 2010 Del Skrevet 20. januar 2010 Hvordan får jeg løst dette problemet: #include "stdafx.h" #include <iostream> using namespace std; int main() { int long tall = 0; int summen = 0; while (tall < 1000001) { summen+=tall; tall+=1; } cout << summen << "\n"; system("PAUSE"); return 0; } Får ut helt feil tall, alt for lav verdi. Tilsvarende Matlab-kode: sum(1:1000000) Lenke til kommentar
GeirGrusom Skrevet 20. januar 2010 Del Skrevet 20. januar 2010 long long sum = 0; for(long long i = 1; i < 100001; i++) sum += i; Summen passer ikke inn i et 32-bit integer, og du kan derfor ikke bruke long int. Lenke til kommentar
Senyor de la guerra Skrevet 21. januar 2010 Del Skrevet 21. januar 2010 (endret) for(i; i < 101; i++) sum += i; Edit: Fant ut av det Endret 21. januar 2010 av Senyor de la guerra Lenke til kommentar
Senyor de la guerra Skrevet 21. januar 2010 Del Skrevet 21. januar 2010 Finnes det er kommando for å generere en tilfeldig verdi? F.eks rand() = 0.21300412 Lenke til kommentar
GeirGrusom Skrevet 21. januar 2010 Del Skrevet 21. januar 2010 (endret) jepp. int i = rand(); eller double d = rand() / (double)RAND_MAX; edit: krever stdlib.h Endret 21. januar 2010 av GeirGrusom Lenke til kommentar
Senyor de la guerra Skrevet 21. januar 2010 Del Skrevet 21. januar 2010 Får printet ut i = 41 hver gang Lenke til kommentar
GeirGrusom Skrevet 21. januar 2010 Del Skrevet 21. januar 2010 bruk srand for å seede Lenke til kommentar
Senyor de la guerra Skrevet 21. januar 2010 Del Skrevet 21. januar 2010 Er veldig C++ noob, så forstår ikke så mye av srand(). Får opp en feilmelding: Error 1 error C2661: 'srand' : no overloaded function takes 0 arguments Lenke til kommentar
NevroMance Skrevet 21. januar 2010 Del Skrevet 21. januar 2010 http://www.cplusplus.com/reference/clibrary/cstdlib/srand/ Der ser du hvordan srand funker. Lenke til kommentar
Senyor de la guerra Skrevet 21. januar 2010 Del Skrevet 21. januar 2010 Finnes det ikke noe rand som er tidsuavhengig? Lenke til kommentar
NevroMance Skrevet 21. januar 2010 Del Skrevet 21. januar 2010 Det korte svaret er nei. Det er ikke mulig å skrive en funksjon som gjør noe helt random, det tilfeldige må, merkelig nok, stamme fra noe, og for at det skal virke random må dette noe endre seg hele tiden. Logisk nok er da leking med tid/klokkesykler det som gir det mest tilfeldige effekten, og en bruker da tid som input for random funksjoner. Så vidt jeg vet bruker alle språk dette, men kan selvsagt være ett eller to språk der ute som bruker noe annet, hva dette da i så fall er vet ikke jeg. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå