Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hi,

ich komm ni weiter, mein Problem sieht folgender Maßen aus:

#include <stdio.h>

#include <stdlib.h>

void main()

{

FILE *datei_ptr;

int pw;

char *ein_datei="test.txt";

datei_ptr=fopen(ein_datei,"r");

fscanf(datei_ptr,"%d",&pw);

fclose(datei_ptr);

printf("pw");

}

Ich möchte aus test.txt die Zeichenfolge 123456789 auslesen die auf die Variable pw übergeben und in der Konsole anzeigen. Beim kompilieren gibts keine Fehler aber nach dem ausführen kommt ne Fehlermeldung; seh ich den Fehler ni oder gibts keinen?

Ich danke für die Aufmerksamkeit

Hallo,

wenn in Deiner Datei tatsächlich die Zeichenfolge steht, kann Dein Code nicht laufen. Integers werde nicht im Klartext gespeichert, sondern als 4 Byte. Du musst in diesem Fall erst einen String (char *) einlesen und diesen dann mit atoi() in ein int konvertieren.

Nic

Also das stimmt nicht. fscanf konvertiert das irgendwie intern. Sonst würde

die Funktion ja auch keinen Sinn machen.:)

Habs extra ausprobiert;)

Ich glaube eher das das Programm die Datei nicht finden kann. Überprüfe nach dem

öffnen mal ob dein Dateizeiger gleich NULL ist, dann ist nämlich ein Fehler

aufgetreten.

Hallo,

stimmt. Wo du recht hast, hast Du recht :). Ich hatte völlig übersehen, dass fscanf die Konvertierung bei Bedarf für den Nutzer durchführt. In dem Fall sollte die Zahl eigentlich korrekt eingelesen werden. Wie lautet denn die Fehlermeldung? Du solltest auch die Rückgabewerte - insbesondere von fopen - überprüfen, ob ein Fehler aufgetreten ist.

[Edit]

Da war einer schneller ;)

Nic

PS:

main liefert ein int zurück und ist nicht vom typ void!

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.