fprintf() - Newline?

Gast #1653146
Lesenswert?
• ▲
▼
Hallo Leute!

Folgendes Problem: Ich möchte mit fprintf(); das "\n" (wie man es von 
printf für eine neue Zeile gewohnt ist) anwenden.
Leider funktioniert das aber nicht.


Hier der Code:
1
#include <stdio.h>
2
#include <stdlib.h>
3

4
int main (int argc, char* argv[])
5
{
6
   FILE * pFile;
7

8
   pFile = fopen("C:\\test","wb");
9
   fprintf(pFile,"\n\n\n");


Warum geht das nicht?


Vielen Dank!
Gast #1653467
Lesenswert?
• ▲
▼
Ok vielen Dank, es hat dank Euerer Hilfe geklappt :)

Nun noch eine andere Frage. Die Forderung an das Programm ist, dass das 
Textfile im aktuellen Verzeichnis angelegt wird.

Nun habe ich versucht, über die Argument-Vector in der Main den Pfad 
herauszufinden.
Durch argv[0] (erster Parameter ist immer der Pfad des Programms!) 
klappt das leider nicht, da ich nicht den Pfad einschließlich des 
Programmnamens benötige.
Sicher könnte man den String beschneiden (Abschneiden des "xyz.exe"), 
allerdings wird es sehr schnell problematisch, sobald der User das 
Programm auf einen Namen seiner Wahl umbenennt.

Habt ihr eine Idee?


Danke!
Gast #1653472
Lesenswert?
• ▲
▼
du musst bis zum letzen \ bzw / alles nehmen. Dann ist es egal wie das 
Programm heist.

> Die Forderung an das Programm ist, dass das
> Textfile im aktuellen Verzeichnis angelegt wird.
Das heist aber nicht im Verzeichniss wo die exe liegt. Man kann auch 
eine Anwendung ausführen und in einem anderen Vezeichnis sein.
Gast #1653521
Lesenswert?
• ▲
▼
.jk. schrieb:
> Was heißt dann aktuelles Verzeichnis?
> Für mich heißt das: dort, wo das Programm liegt.

genau das heist es aber nicht. Wenn du auf die Kommandozeile gehts und 
dort z.b. ping startest dann bist du im Verzeichnis c:\ aber das 
programm liegt unter c:\windows\system32\ping.exe

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren