Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

na..hab ich es nicht gesagt...hier die nächste frage:

gibt es in ansi c eine möglichkeit bestehende dateien in einen quellcode einzufügen, ohne den quellcode grossartig umzubaun und zu verschachteln?!

mmh..hoffe man versteht was ich will ;)

also man hat einen quellcode und schon fertig geschriebene programme. und das prog würde ich gerne in den quellcode einfügen, so dass, wenn man das prog aufruft und man die auswahl treffen kann was man jetzt machen will, das prog automatisch in das andere springt oder so in der art....

Geschrieben

Du könntest eine Auswahloberfläche schaffen. Ja nachdem welche Auswahl getroffen wird. startest du dann eine EXE-Datei.

Zum Beispiel:

Bitte Wählen sie

[1] Addieren

[2] Subtrahieren

[3] Multiplizieren

[4] Dividieren

Wenn Auswahl==1 dann starte addieren.exe

Wenn Auswahl==2 dann starte Subtrahieren.exe

Wenn Auswahl==3 dann starte multiplizieren.exe

Wenn Auswahl==4 dann starte dividieren.exe

Habe ich die Frage richtig verstanden?

MVG

need-some-blood

Geschrieben

Hmm sicherlich könnte ich dir hier nen fertigen Quellcode geben, aber du sollst ja auch was lernen. Und abgucken kann ja jeder. Deshalb schau mal in der Hilfe unter System() nach. Da kannst du verschiedene Dos-Kommandos oder Dateien ausführen lassen.

MVG

need-some-blood

Geschrieben

ich weiß nicht was du meinst :-/

wie in der hilfe nach schaun?!

von meinen programmierprogramm?!

wenn du das meinen solltest...da gibt es nur eine kleine hilfe zu und da steht sowas nicht drin :(

bitte schreib einfach mal den quellcode, damit ich mir den ausdrucken kann und zu meinen unterlagen tun kann, damit ich das demnächst weiß wie es geht *bettel*

Geschrieben

Hallo,

system() kann verwendet werden, um externe Programme aus einem C-Programm heraus aufzurufen. Das folgende Code-Fragment geht davon aus, dass in "auswahl" ein entsprechender Wert (der beispielsweise vorher eingelesen wurde) steht.


switch (auswahl) {
case 'l':
system("ls");
break;
case 'x':
system("xterm");
break;
default:
break;
}
[/php]

Es gibt auch noch elegantere Varianten (beispielsweise über "exec() und Freunde", die aber teilweise komplizierter zu Handhaben sind.

Nic

Geschrieben
Original geschrieben von Troja2k

und was heißt da dieses "ls" und "xterm"?

Kennst du keine DOS-Befehle? - Hätte auch "cd" stehen können, für eine Pfadebene tiefer. Kannst auch mit system("File.bat") Batchdateien ausführen und wenn du Pfad brauchst, musst du sie eben dazu packen. ;)

Geschrieben

Hallo,

cd halte ich für ein entwas unglückliches Beispiel, da es sich aus naheliegenden Gründen um ein Shell-Buildin handelt und nicht um ein externes Kommando.

Unter Linux/Unix übergibt system() den Parameter an "sh -c". D.h. man sollte nicht erwarten mit einer Sequenz wie "system("cd Verzeichnis"); system("ls"); den Inhalt von Verzeichnis angezeigt zu bekommen. Das funktioniert nur über "system("cd Verzeichnis; ls"). Verzeichniswechsel innerhalb eines Programms sollte man mit chdir() durchführen bzw. beim system() den kompletten Pfad mit angeben.

Nic

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

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