Quote:
Originally posted by P0!NT3R+Jul 5 2007, 23:56--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>QUOTE (P0!NT3R @ Jul 5 2007, 23:56)</td></tr><tr><td id='QUOTE'> <!--QuoteBegin--nehl@Jul 5 2007, 21:09
Zu 1. Das strcpy bringt rein garnichts, es kopiert nichts in einer vorhandenen Variable ..
Zu 2. Unsauber. Ich bin stolz auf meine Funktion? Nö, nirgends behauptet.
Außerdem muss ein newline Zeichen nicht immer am Ende eines Strings sein..
Zu 4.
1) In bezug auf was?
2) Tja, schlecht wenn man nicht weiß wie groß seine Variable ist ;).
3) Wenn du meinst.
Zu 5. Weil die Parameter die einzigste Warnungsquelle eines Compilers ist, wenn man sie nicht benutzt ( genauso wie jede andere ungenutzte Variable auch .)
Zu 6. 'Ungeskillter' *g* Kein Kommentar.
Zu 7. Eine IDE kompiliert rein garnichts.
Zu 8. (PS). Mein fgets ist falsch? Dann zeig mir mal die falschen Argumente die ich benutze.
PS: Könntest du das nächste mal normale Ausdrücke benutzen.
Achja, deine Angriffe nerven. Entweder du redest normal und lass es einfach sein, danke ;).
|
1)
Quote:
|
es kopiert nichts in einer vorhandenen Variable ..
|
Aha, also nach der Grammatik und Nutzung der 5 Fälle in diesem Satz ist das strcpy IN der Variable drin?
Mach dir ein kleines Programm, das einen String ausgibt, kompiliere es und guck dir die Ausgabe an, danach setzt du unter die Deklaration der Variablen ein strcpy(xyz, "") und guckst, was sich ändert.
2) Als ich deinen Text gelesen habe, kam es mir so vor, als hättest du aufgrund deiner Funktion "chomp" gerade einen enormen Endorphin-Stoß bekommen.
3) malloc kennst du immer noch nicht, oder? Schon einmal mit der WinAPI gearbeitet? z.B. mit Winsock? Du weißt gar nicht wie oft man sizeof braucht.
Aber lass mich raten, was du stattdessen machst: Du setzt eine Konstante mit einem willkürlichen Wert, am besten noch mit rand(), fest, und ersetzt alle sizeof Operatoren mit deiner alles
handlenden über-Konstante.
4) argc und argv sind optionale Parameter, keine unreferenzierten Variablen, daher kommt es zu keinem Fehler und auch zu keiner Warnung.
Achja, ich weiß jetzt, weshalb du keinen Fehler bei deiner konstanten Variable, die sich als konstanter Ausdruck verkleidet hat, zu keinem Fehler gekommen ist, weil du sicherlich einen C++ Compiler genutzt hast.
Depp.. C mit einem C++ Compiler?
5) Lachst du dir gerade wie ein kleines Kind bei Sexualkunde ins Fäustchen? O_o
6) Bei großen IDEs ist jedoch immer einer dabei. Und die, die ich kenne, haben auch einen selbst gebastelten Compiler bei sich.
7) Ich habe dir oben schon gesagt, was an deinem fgets falsch ist.
PS: Könntest du mal bitte aufhören solch einen Müll zu labern? Ich weiß, dass es bei deinem immensen Unvermögen und deiner Affinität zur Schwachsinnigkeit sehr schwierig ist damit aufzuhören.
Ich würde es trotzdem sehr begrüßen, dass du es versuchst.
Zum Wohle aller ;)
Edit: böse Müdigkeit.. [/b][/quote]
1. Nochmal für kleine "Pointer": strcpy ( ja es steckt schon im Namen drin! ) kopiert einen String in einen anderen. Nur weil du angeblich nichts - also "" - kopierst heißt das nicht das dein String danach leer ist. Das tolle daran, es ist wirklich leer, aber das tollste daran ist wiederum das auch dein terminierungszeichen futsch ist.
Und schließlich bricht das Programm zusammen.
2. Kann ich nicht beurteilen.
3. Ich arbeite sowenig mit der WinAPi wie möglich.
Wieso? Sie ist total überladen und ich bekomme eine Gänsehaut wenn ich sie benutzen muss..
Ich weiß nicht wie oft man sizeof braucht? Wie kannst du das beurteilen?
Nun fängt langsam wieder dieses attackierende Verhalten an, süß :).
4. Ich sagte nicht Fehler, sondern Warnung.
Es kommt zu keiner Warnung wenn man keine Variable benutzt die deklariert oder übergeben worden ist? Falsch, sehr falsch.
Wer sagt das ich alles mit einem C++-Compiler kompiliert hab?
Und wenn ich einen benutzt hätte, dann wüsstest du auch das er den Code erkennt und als C-Code kompiliert?
5. Super Witz, nächster Witz.
6. Es ist ein Compiler dabei, ja, aber die IDE ist kein Compiler.
Selbst gebastelten Compiler? Na, der muss ja hervorragend sein. *g*
7. Hast du das?
Zu 8(PS). Träum weiter, süßer ;).
So und jetzt nochmal wegen sizeof.
sizeof ist - klar - sehr hilfreich.
Aber sizeof muss nicht immer die Größe des kompletten Strings mit dem Terminierungszeichen ausgeben.
Ein Beispiel:
Code:
#include <stdio.h>
int main( void )
{
char *bleh = "Hallo Welt";
printf( "%d\n", sizeof( bleh ) );
return 0;
}
Nun, es gibt 4 aus. Also ganze 4 Bytes.
So, nun da wir wissen das der Datentyper long für Addressen, etc. verwendet wird und das hier nur ein Zeiger auf ein String ist machen wir mal folgendes zum Beweis:
Code:
#include <stdio.h>
int main( void )
{
printf( "%d\n", sizeof( long ) );
return 0;
}
Jau! Er gibt 4 aus.