Spikey Skrivet 13 Augusti 2007 Rapport Skrivet 13 Augusti 2007 (redigerat) Hej jag har precis börjat med C och har programmet Bloodshed Dev-C++ och en bok men när jag skriver in koderna som står i boken säger programmet att det är nått fel på koden, har testat 2st olika koder och den säger att det är fel på båda, och sen när jag testar koden #include <stdio.h> main() { printf("Hello, World!\n"); return 0; } och kompilerar den och linkar den sen startar den så kommer fönstret upp i ca 0.5sec sen försvinner det igen, någon som kan hjälpa mig? Är det fel på programmet eller vad? Redigerat 13 Augusti 2007 av Nigthwolf Citera
Katt Skrivet 13 Augusti 2007 Rapport Skrivet 13 Augusti 2007 (redigerat) Nej då, lägg bara till cin.get() innan return 0;, så ser du nog den texten! Ajdå, såg inte att du inte körde med #include <iostream>, lägg till det efter #include <stdio.h>. Redigerat 13 Augusti 2007 av Katt Citera
Spikey Skrivet 13 Augusti 2007 Författare Rapport Skrivet 13 Augusti 2007 (redigerat) Det funkade inte heller, den säger att det är fel på cin.get() Den säger att iostream inte finns. Redigerat 13 Augusti 2007 av Nigthwolf Citera
Katt Skrivet 13 Augusti 2007 Rapport Skrivet 13 Augusti 2007 Hmm... Kontrollera så att du stavar allting rätt, boken är kanske gammal och så... Dessutom så är kompilatorn kanske inställd på C++, och inte på C, men det borde inte vara nått större problem... Skriv ner nån kod, så får vi se och nån kan 'rätta' den... Citera
Spikey Skrivet 13 Augusti 2007 Författare Rapport Skrivet 13 Augusti 2007 (redigerat) Här är en kod: /* PRINT_IT.C--This program prints a listing with line numbers! */ #include <stdlib.h> #include <stdio.h> void do_heading(char *filename); int line, page; int main( int argv, char *argc[] ) { char buffer[256]; FILE *fp; if( argv < 2 ) { fprintf(stderr, "\nProper Usage is: " ); fprintf(stderr, "\n\nPRINT_IT filename.ext\n" ); exit(1); } if (( fp = fopen( argc[1], "r" )) == NULL ) { fprintf( stderr, "Error opening file, %s!", argc[1]); exit(1); } page = 0; line = 1; do_heading( argc[1]); while( fgets( buffer, 256, fp ) != NULL ) { if( line % 55 == 0 ) do_heading( argc[1] ); fprintf( stdprn, "%4d:\t%s", line++, buffer ); } fprintf( stdprn, "\f" ); fclose(fp); return 0; } void do_heading( char *filename ) { page++; if ( page > 1) fprintf( stdprn, "\f" ); fprintf( stdprn, "Page: %d, %s\n\n", page, filename ): } Den hittar fel på rad: 5, 31,38,47,51 och 53. Har du nått tips på program till C då? Redigerat 13 Augusti 2007 av Nigthwolf Citera
epaaj Skrivet 13 Augusti 2007 Rapport Skrivet 13 Augusti 2007 Det funkade inte heller, den säger att det är fel på cin.get() Den säger att iostream inte finns. Det ska vara ett semikolon efter cin.get() så det blir cin.get(); Citera
Shaitan Skrivet 14 Augusti 2007 Rapport Skrivet 14 Augusti 2007 Hallå! lägg till "using namespace std" innan main. Citera
Spikey Skrivet 14 Augusti 2007 Författare Rapport Skrivet 14 Augusti 2007 (redigerat) Det går fortvarande inte att använda cin.get(); för den säger att det är nått fel på den raden... `cin' undeclared (first use this function) Redigerat 14 Augusti 2007 av Nigthwolf Citera
Andersffs Skrivet 14 Augusti 2007 Rapport Skrivet 14 Augusti 2007 Det är nog bättre att använda sig av c++ för c är över 30 år gammalt. Citera
Spikey Skrivet 14 Augusti 2007 Författare Rapport Skrivet 14 Augusti 2007 Får skaffa en ny bok då... Citera
epaaj Skrivet 14 Augusti 2007 Rapport Skrivet 14 Augusti 2007 Får skaffa en ny bok då... Nae, det måste du inte. Visst kanske C++ kan vara bättre att jobba med, men det gör du som du vil med. För att få cin.get() att funka (C++) måste du skriva dit std::cin.get(); istället för bara cin.get(). Eller så lägger du till "using namespace std" efter alla include. Citera
Spikey Skrivet 14 Augusti 2007 Författare Rapport Skrivet 14 Augusti 2007 ok tack, va på biblioteket idag och lånade en om C++. Citera
Rekommendera inlägg
Gå med i konversationen
Du kan skriva nu och registrera dig senare. Om du har ett konto, logga in nu för att posta med ditt konto.