Zum Inhalt springen

Guybrush Threepwood

Mitglieder
  • Gesamte Inhalte

    4909
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    6

Alle Inhalte von Guybrush Threepwood

  1. Guybrush Threepwood

    array

    würde das z innerhalb des while blocks deklariert werden Wie gesagt ich finde es unlogisch das eine Variable die vor einem {}-Block deklariert ist nur innerhalb diesem gültig ist.
  2. Guybrush Threepwood

    array

    Eben nicht, weil du sie ja dann nicht in der Bedingung verwenden kannst. Das ist ja das Selbe wie mein 1. Beispiel.
  3. Guybrush Threepwood

    array

    Ja schon klar, aber so wie es im Standard festgelegt ist bedeutet es doch das ich eine Variable vor einem Block {} anlege, diese aber nur innerhalb des Blockes gültig ist. Also so als wäre sie in ihm deklariert worden. Das wirkt für mich inkonsequent und ich sehe nicht warum man sich so entschieden hat. Um es nochmal zu verdeutlich könntem man es ja theoretisch mit folgendem Beispiel gleichsetzen: int i=0; { i = 5 //ok } i++; //geht nicht weil i unbekannt [/PHP] Das ist natürlich falsch weil i auch nach dem Block existiert, nach der for-schleifen logik würde es aber nicht existieren. Ich suche halt den tiefern Sinn darin
  4. Guybrush Threepwood

    array

    Aber ist das nicht eigentlich unlogisch? Weil der Kopf ist ja außerhalb der Schleife und bei z.B. einer do-while kann ich als Bedingung auch nichts nehmen was innerhlb der Schleife angelegt wird. Außerdem müsste dann doch auch folgendes Beispiel klappen #include <stdio.h> int main() { for (i=0; i<10;++i) { int i; } return 0; } [/PHP] Oder geht das nur bei meinem VC++6 nicht? Nur mal so am Rande :floet:
  5. guck dir mal _putenv an
  6. Eieiei das ist jetzt nicht böse gemeint, aber du solltest dich unbedingt nochmal mit Zeigern beschäftigen. Innerhalb der Funktion anzahl veränderst du nicht den Inhalt von anzbuch und anzzei sondern den Zeiger der auf sie zeigt. du müsstest den Zeiger immer dereferenzieren, also so (*anzbuchst)=0; (*anzbuchst) = (*anzbuchst) + 1; bzw. (*anzbuchst)++; Außerdem solltest du nicht iostream.h einbinden, da diese veraltet ist. nimm stattdessen iostream (ohne .h). Nach dem Standard ist void main (void) falsch, int main() wäre hier richtig. Da du anscheinend noch Probleme mit Zeigern hast und C++ verwenndest solltest du lieber Referenzen benutzten. Und die Funktion system() solltest du nicht verwenden, da diese ungeahnte verhaltensweisen an den Tag legen kann. Ich hab das mal alles in folgendem Programm zusammengefasst, welches meiner Meinung nach besser sein sollte: #include <iostream> #include <string.h> #include <conio.h> using namespace std; void anzahl(int n, int& anzbuchst, int& anzzeichen, char* buchst) { for (int i=0; i<n; i++) { if ( (buchst[i]>= 'A' && buchst[i]<='Z') || (buchst[i]>= 'a' && buchst[i]<='z') ) { anzbuchst = anzbuchst + 1; } anzzeichen = anzzeichen + 1; } } int main() { char text[] = "Hier steht der Text "; int gr = 0, anzbuch = 0, anzzei = 0; gr = strlen(text); anzahl(gr, anzbuch, anzzei, text); cout << " Anzahl Buchstaben: " << anzbuch << endl; cout << " Anzahl Zeichen: " << anzzei << endl; cout << endl; getch(); return 0; } [/PHP] PS: Wenn du Code Tags verwendest erhöht das die Lesbarkeit enorm
  7. Hmmm also ersten solltest du nicht #include <iostream.h> [/PHP] verwenden, da diese veraltet ist. nimm lieber [PHP] #include <iostream> using namepsace std; also ohne .h die ausgabe solltest du so machen damit sie direkt erfolgt und nicht erst nach programmende: cout<<"Zahl"<<Zahl<<endl; [/PHP] außerdem solltest du die Funktiopn system() nicht verwenden da sie ungeahnte auswirkungen haben kann. nimm lieber getch() oder getchar()
  8. huh? seid wann sieht die startseite denn so aus? ich geh schon seit ewigkeiten direkt über forum.fachinformatiker.de und hab das andere noch nie gesehen :eek:
  9. Gibt es im Arbeitsrecht Bestimmungen zum Thema Teamarbeit, besonders bezüglich der Trennung von Teams? Ich denke zwar nicht das es da so etwas gibt wie ich es suche, aber die Frage ist eher aus Hoffnungslosigkeit gestellt...
  10. Hast du das Plattform SDk installiert und welche Windows Version benutzt du?
  11. z.B. so http://forum.fachinformatiker.de/showthread.php?t=22464&highlight=createwindow
  12. Um Formulare zu erstellen brauchst du kein Drag&Drop, das lässt sich auch alles per "Hand" erledigen.
  13. Das mit den APIs ist Käse. Du musst einfach nur deinem Linker die ws2_32.lib angeben. Such mal ein bischen in den Einstellungen wo die anderen .lib Dateien stehen.
  14. guck mal hier: http://www.fun-soft.de/showtopic.php?threadid=5157&time=1090580969
  15. Wie du ja weißt läuft die while Schleife solange wie die Bedingung in der Klammer wahr ist. Der Operator == vergleicht 2 simple datentypen auf ihre gleichheit und liefert wahr oder falsch zurück. Wenn du nun 1 mit 1 vergleichst hast du immer das selbe Ergebnis, nämlich das sie gleich sind (also wahr) und die Schleife läuft unendlich oft. Genauso gut könntest du while(1) schreiben, weil in C die 0 als falsch und alles andere als wahr interpretiert wird. Um zwei Strings in C zu vergleichen kannst du die funktion strcmp benutzen und deren Rückgabewert prüfen.
  16. Du könntest z.B mal hier im Forum danach suchen
  17. Oh sorry ich seh grade das ich mich gestern Abend verguckt habe, hab gedacht er hätte die Schleife nur um den Teil printf ("\nEinen weiteren Vorgang? (1/0) "); scanf ("%d",&iWdh); gesetzt :floet:
  18. Was soll daran nicht nachvollziehen zu sein?! Er will doch nicht nur die Abfrage immer wiederholen, also darf er die schleife auch nicht nur um diese machen
  19. Das kommt immer ganz drauf an
  20. Also erstmal reicht es wenn du das einmal postest, außerdem würde mich mal interessieren was du dafür bereit bist zu zahlen?
  21. Um das ganze Programm zu wiederholen musst du die Schleife auch um alles machen und nicht nur um die Frage+Eingabe. Um den Swap Befehl zu verstehen solltest du dich mit Pointern befassen.
  22. Was für einen Compiler verwendest du denn? Der Code oben war C++, wenn es sich um einen reinen C Compiler handelt dann versuchs mal so: #include <stdio.h> #include <string.h> int main() { double dNote=0; char szAusgabe[3]; scanf("%f",&dNote); // ANstelle der Punkte deine Verarbeitung und die zuweisung von z.b. strcpy(szAusgabe,"3+"); printf ("\n%s",szAusgabe); return 0; } [/PHP]
  23. Hmm an dem Programm da oben solltest du dir lieber nichts abgucken (nicht böse gemeint ) Um den Ansatz von U[[ °LoneWolf° mal zu verbessern: #include <stdio.h> #include <iostream> #include <string> using namespace std; int main() { double dNoteneingabe=0; string strAusgabe; cin>>dNoteneingabe; ...// ANstelle der Punkte deine Verarbeitung und die zuweisung von z.b. //strAusgabe = "3+"; cout<<strAusgabe<<endl; return 0; } [/PHP]
  24. Man sollte goto überhaupt nicht einsetzten wenn die Sprache andere Möglichkeiten bietet:)
  25. Also die Berechnung kann man durchaus so machen, aber 2 Dinge für den guten Stil 1. iostream.h ist nicht mehr aktuell, du solltest nur iostream einbinden 2. es heißt nicht void main() sondern int main()

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...