Zum Inhalt springen

dennis_himself

Mitglieder
  • Gesamte Inhalte

    6
  • Benutzer seit

  • Letzter Besuch

  1. Ok, das mit der Größe des Speicherblocks war mir schon klar, Ich dachte mir: Gib der Variable Teil1 einfach 30 Zeichen, das langt dicke wenn ich da noch die 2 anderen Streams hinzufüge. Ich runde immer auf, und zähl nicht genau wieviele Zeichen das maximal sein werden, schlechte Angewohnheit ich weiss. Dummerweise habe ich aber der variablen X die 30 Zeichen gegeben... aus Unachtsamkeit. Das mit der Begrenzung damit der Reservierte Speicher nicht "überläuft" ist mir neu. Aber gut zu wissen, ich werde künftig versuchen das zu beherzigen! :floet: Mein Programm läuft letzt jedenfalls einwandfrei, und ich hab noch vieles was ich verbessern und erweitern kann. So hab ich die nächsten Wochen wenigstens etws zu tun! Vielen Dank für die Aufklärung!
  2. Es wird ein Speicherblock reserviert, dieser wird mit dem Inhalt 'sudo nvclock -F ' gefüllt.
  3. Natürlich habe ich das verstanden, da ich an das 17 Zeichen lange Array was anfüge, überschreibe ich Speicher der nicht reserviert ist. Teil1 + x + Teil2 = mehr als 17 Zeichen! Ich habe versehentlich der X- Variable 30 Zeichen gegeben die ich eigentlich Teil1 geben wollte... Was macht da jetzt keinen Sinn ???
  4. Ich bin der einzige User, also sind sudo Befehle kein Problem. 1. Doppelklick -> Programm startet 2. Auswahl treffen, Passwort eingeben, fertig Geht schneller, ich erspar mir den kompletten Befehl einzugeben. Terminal öffnen und Passwort eingeben müsste ich ja so oder so. Ich will das Tool natürlich noch Stück für Stück erweitern, aber dafür muss ich erstmal etwas besser werden. Ist quasi ein Batch file mit Menü, dass ich das nicht vertreiben kann ist mir auch klar! PS: Ich weiss nicht mal was POSIX sein soll...
  5. Stimmt, ich hab fälschlicherweise der x-Variable 30 Zeichen gegeben...wie dämlich. Vielen Dank ! Das mit dem int Wert habe ich nicht gemacht weil ich dachte es könnte zu Problemen führen wenn man mit strcat zwei char und einen int wert zusammenführt. Ist das grundsätzlich egal?
  6. Hallo zusammen, ich bin neu hier, also kurz etwas zu meiner Person: Ich lerne im Moment C auf eigene Faust, also Lehrbuch gekauft und losgebüffelt! Ich bin noch ein ziemlicher Anfänger und übe zugegeben nicht so oft wie ich es sollte! Beruflich habe ich leider gar nichts damit zu tun. Achja, ich programmiere auf einem Ubuntu System. Und jetzt brauch ich mal jemanden der mir zeigt was ich im moment falsch mache. Ich habe ein kleines Tool programmiert um nvclock einfacher und schneller bedienen zu können. Ist praktisch weil ich es oft verwende und eine gute Übung für mich als Anfänger! Wenn ich den Code (siehe unten) ausführe und den Punkt 5 (Individuell) wähle führt er zwar den Befehl korrekt aus, danach folgt aber ein Stack Smashing. Ich hätte gerne daß er ins "Menü" zurückkehrt. Ich komme einfach nicht darauf woran das liegt. Könnte mich bitte einer von euch erleuchten? :hells: Schon mal vielen dank im Voraus! Hier ist der Code: #include <stdio.h> #include <stdlib.h> #include <string.h> int eingabe; int ausgang(); int individuell(); int main(void) { char eins[] = "sudo nvclock -F 25 -f"; char zwei[] = "sudo nvclock -F 36 -f"; char drei[] = "sudo nvclock -F 50 -f"; char vier[] = "sudo nvclock -F 100 -f"; printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"); printf("#######################################\n"); printf("# #\n"); printf("# Grafikkarten-Ventilator-Steuerung #\n"); printf("# #\n"); printf("#######################################\n"); while (1) { puts("\n\nChoose your destiny! (1-5)"); printf("\n1 - Ventilator auf 25% "); printf("\n2 - Ventilator auf 36% "); printf("\n3 - Ventilator auf 50% "); printf("\n4 - Ventilator auf 100% "); printf("\n5 - Individuell "); printf("\n6 - Exit \n\n"); printf("Eingabe: "); scanf("%d", &eingabe); switch (eingabe) { case 1: { system(eins); break; } case 2: { system(zwei); break; } case 3: { system(drei); break; } case 4: { system(vier); break; } case 5: { individuell(); break; } case 6: { ausgang(); } default: { puts("\n\nSo nicht! Bitte nur zwischen 1, 2, 3, 4, 5 und 6 auswählen!\n"); } } } } int ausgang() { printf("\n\nBis Bald ! \n\n\n\n\n"); exit(0); } int individuell() { char x[30]; char teil1[] = "sudo nvclock -F "; char teil2[] = " -f"; printf("\n\nBitte waehlen sie die Prozentzahl zwischen 10 und 100 Prozent!: "); scanf("%s", x); strcat(teil1, x); strcat(teil1, teil2); system(teil1); } [/PHP]

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...