Integer Variable an Struktur übergeben
-
Hi,
bin gerade dabei mir structs beizubringen. Jetzt hab ich folgendes Problem. Mein code sieht wie folgt aus:
#include <stdio.h> struct init { int channel; char ftpfile_pfad[20]; char logfile_name[20]; }; int main(void) { int x; printf("Channel eingeben: "); scanf("%i",x); struct init lib = {x,"Test","./testlog"}; printf("%i %s %s",lib.channel,lib.ftpfile_pfad,lib.logfile_name); return(0); }
Wenn ich mir das Struct ausgeben lasse, wird als Integer Wert 2293672 ausgegeben aber nicht die Zahl die ich als Channel eingelesen habe. Woran kann sowas liegen. Sry bin noch ziemlicher Anfänger.
Danke im voraus!
-
scanf("%i", &x);
nachzulesen in fast allen Tutorials
-
Btw, ist es erstaunlich, daß du überhaupt noch die Möglichkeit hattest etwas auszugeben
Die Chancen stehen gut, daß dein scanf() in einem SegFault oder schlimmeren endet.
-
Hab ich auch grad bemerkt das da was fehlt
. Jetzt läufts. Danke
-
so ne initialisierung hab ich noch nie gesehen:
struct init lib = {x,"Test","./testlog"};
geht das auch mit klassen?
-
Das geht mit allen PoD-Typen (d.h. in C mit nahezu jedem Typ, in C++ mit allem, was keinen eigenen Ctor mitbringt).