Anzeige:
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 16 bis 30 von 33

Thema: directory functions

  1. #16
    Registrierter Benutzer
    Registriert seit
    28.03.2002
    Ort
    Berlin
    Beiträge
    10
    Original geschrieben von Deever
    Ich meinte eigentlich eher, man solle zuerst C gut können, bevor man etwas anderes macht!
    nöö wieso, wenn man vorher in delphi gecoded hat kennt man sich doch in der objektorientierung aus warum dann nich direkt auf c++ umsteigen...

  2. #17
    Registrierter Benutzer Avatar von Hans-Georg Normann
    Registriert seit
    04.03.2000
    Ort
    Uetersen
    Beiträge
    571
    In einem Punkt muß ich wiedersprechen. Ich habe ein Progämmelchen geschrieben, welches mir argv[0] ausgibt. Ich habe das dann kompiliert und ausgeführt, mit IDE und auch aus der Konsole heraus, immer ohne Parameter. Aus der Konsole heraus habe ich das mit ./PROGNAME gestartet. Und argv[0] enthält genau diese Angabe. Zufall?

    Hans
    333 Mhz, 466 MHz, neee, ich hab was neues zuhause.....

  3. #18
    Registrierter Benutzer Avatar von panzi
    Registriert seit
    04.05.2001
    Ort
    Kottingbrunn
    Beiträge
    609
    Original geschrieben von Hans-Georg Normann
    In einem Punkt muß ich wiedersprechen. Ich habe ein Progämmelchen geschrieben, welches mir argv[0] ausgibt. Ich habe das dann kompiliert und ausgeführt, mit IDE und auch aus der Konsole heraus, immer ohne Parameter. Aus der Konsole heraus habe ich das mit ./PROGNAME gestartet. Und argv[0] enthält genau diese Angabe. Zufall?

    Hans
    Wieso Zufall? Stimmt so schon. Wenn du's mit /home/user1/src/progname aufrufst wird auch /home/user1/src/progname in argv[ 0 ] drinn stehn. Deine IDE wird's wohl eben auch per ./progname aufgerufen haben.
    Intel Core 2 Duo CPU 2.66GHz; Nvidia GeForce 8 8800 GTS; 4GB RAM; Fedora 12; KDE-testing

  4. #19
    Registrierter Benutzer Avatar von Hans-Georg Normann
    Registriert seit
    04.03.2000
    Ort
    Uetersen
    Beiträge
    571
    Hätte besser gleich die Nase in ein Buch gesteckt.
    Per Definition zeigt argv[0] (also der erste Zeiger) immer auf den namen des Programmes
    Quelle: Dirk Louis, C/C++ Kompendium, M&T
    Also wird argv[0] nicht per Parameterübergabe an das Programm erzeugt. Wollte das nur richtig stellen damit die Nachwelt sich nicht wundert.

    Hans
    333 Mhz, 466 MHz, neee, ich hab was neues zuhause.....

  5. #20
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113
    Original geschrieben von Hans-Georg Normann
    Hätte besser gleich die Nase in ein Buch gesteckt.
    ACK!

    Also wird argv[0] nicht per Parameterübergabe an das Programm erzeugt.
    Doch, das System schreibt da den String (Token) hin, unter dem das Programm aufgerufen wurde. Mir kommt da dunkel der Begriff "Positionparameter" in den Sinn.
    Wenn du also ein und die selbe Programmdatei entweder mit '/home/user/bin/prog' oder mit 'bin/prog' aufrufst, hast du in argv[0] auch den entsprechenden Token drin. Das heisst also: Selbst wenn bin/prog nur ein symlink auf /bin/ls sein sollte, hat das laufende Programm in argv[0] "bin/prog" stehen. WIe eben in deinen Skripten der Name der ASCII-Datei drinsteht, nicht die verwendete Shell!
    Erkenntnis: <einstein>Der Name des Programms ist relativ.</einstein>

    Gruß && HTH!
    dev

  6. #21
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113
    Original geschrieben von general_gunman
    nöö wieso, wenn man vorher in delphi gecoded hat kennt man sich doch in der objektorientierung aus warum dann nich direkt auf c++ umsteigen...
    Man sollte IMHO zuerst mit prozeduralen Programmiersprachen beginnen, OO kommt nachher!

  7. #22
    Registrierter Benutzer Avatar von Hans-Georg Normann
    Registriert seit
    04.03.2000
    Ort
    Uetersen
    Beiträge
    571
    Original geschrieben von Deever
    Man sollte IMHO zuerst mit prozeduralen Programmiersprachen beginnen, OO kommt nachher!
    Jepp, habe vor 25 Jahren in Basic programmiert, das ist doch prozedural, oder?
    //Ironie ENDE
    333 Mhz, 466 MHz, neee, ich hab was neues zuhause.....

  8. #23
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113
    Prozedural ja, aber keine Programmiersprache! *flame*

  9. #24
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Original geschrieben von Deever
    Man sollte IMHO zuerst mit prozeduralen Programmiersprachen beginnen, OO kommt nachher!
    Naja. Finde ich jetzt nicht.
    Man kann ja sehr wohl mit C++ oder Java oder was auch immer auch in prozeduralem Programmierstil programmieren (und macht das wohl anfänglich auch, weil es natürlicher erscheint und für kleine Programme auch sinnvoll ist).
    Von dem her macht es schon Sinn, gleich mit einer Sprache anzufangen, die Objektorientierung unterstüzt (und zudem wie bei C++ gegenüber C noch einige andere Vorteile hat).

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  10. #25
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Original geschrieben von Hans-Georg Normann
    Jetz muss ich mal ganz blöd nachfragen: Werden unter Unix / Linux nicht grundsätzlich alle Programme aus einer Shell heraus gestartet?
    Nein, ein Programm kann ja zB von einem anderen Programm, das keine Shell ist, gestartet werden.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  11. #26
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Original geschrieben von general_gunman
    nja ich wollt n log für mein prog schreiben und wenn ich ohne pfadangabe nur mit fopen dateiname die file erstelle landet sie immer in meinem home directory, ich wollt aber eigendlich das sie dahin kommt wo auch das prog liegt...
    Ein Log kannst du praktisch auf keinem Betriebsystem in das Programmverzeichnis schreiben, bzw nicht sicher, weil man da nur sehr selten die nötigen Rechte hat.

    Solche Ideen kommen oft von Programmierern, die nur unter Win9x gearbeitet haben, wo es keine Rechtetrennung gibt, denn selbst unter Win2000 oder XP ist das bei vernünftigem Systemsetup nicht mehr möglich.

    Log Dateien werden unter Unix meistens nach /var/log geschrieben, bzw in das Homeverzeichnis oder ein darunter liegendes Applikationsverzeichnis.

    Möglicherweise hat der neue XDG Directory Standard sogar einen Platz für Logs vorgesehen.

    Globale Konfiguration findet man wirklich meistens in /etc/application.conf oder /etc/application/xyz.conf, bzw die Benutzer-spezifischen in $HOME/.application/

    Configs von Qt Programmen auch häufig in ~/.qt

    Bei Configs kann es nicht schaden, sich den Verzeichnisstandard von XDG anzusehen.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  12. #27
    Registrierter Benutzer Avatar von Hans-Georg Normann
    Registriert seit
    04.03.2000
    Ort
    Uetersen
    Beiträge
    571
    Hi anda_skoa

    ich seh den Begriff XDG hier im Forum und überhaupt zum ersten mal. Was hat es damit auf sich? Quellenangabe?

    Hans
    333 Mhz, 466 MHz, neee, ich hab was neues zuhause.....

  13. #28
    Registrierter Benutzer
    Registriert seit
    29.02.2004
    Beiträge
    113
    Original geschrieben von anda_skoa
    Log Dateien werden unter Unix meistens nach /var/log geschrieben
    Jein...für das Logging ist unter Unix ein eigener Daemon zuständig, der das je nach Konfiguration dorthin schreibt!

  14. #29
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Original geschrieben von Hans-Georg Normann
    ich seh den Begriff XDG hier im Forum und überhaupt zum ersten mal. Was hat es damit auf sich? Quellenangabe?
    Oh, tut mir leid.
    Das ist die Abkürzung für die freedesktop.org Initiative, zu finden unter www.freedesktop.org

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  15. #30
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Original geschrieben von Deever
    Jein...für das Logging ist unter Unix ein eigener Daemon zuständig, der das je nach Konfiguration dorthin schreibt!
    Unter anderem. XFree, CUPS, etc schreiben je nach Einstellung auch eigene Logs.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •