C getpwnam()

Diskutiere C getpwnam() im Webmaster Hilfe / Programmierer Forum Forum im Bereich Computerprobleme; hab ein problem in c, folgender code gibt ständig fehlermeldungen zurück, was daran falsch? #include <stdio.h> struct passwd *getpwnam(char *);...

  1. Odious

    Odious Erfahrener Benutzer

    Dabei seit:
    09.03.2007
    Beiträge:
    2.305
    Zustimmungen:
    0
    hab ein problem in c, folgender code gibt ständig fehlermeldungen zurück, was daran falsch?
    Code:
    #include <stdio.h>
    
    struct passwd *getpwnam(char *);
    
    int main(int argc, char *argv[], char enu)
    {
    	if (argc == 2)
    	{	
    		int *i = getpwnam(*argv[1]);
    		printf("%d", *i);
    	}
    	else{printf("Falsch aufgerufen!");}
    }
    folgende Fehlermeldung:
    Übergabe des Arguments 1 von »getpwnam« erzeugt Zeiger von Ganzzahl ohne Typkonvertierung
    SayUID.c:9: Warnung: Initialisierung von inkompatiblem Zeigertyp
     
  2. Anzeige

    schau dir mal diesen Ratgeber an. Dort findet man viele Hilfestellungen.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  3. Sviper

    Sviper Guest

    Also: Die Fehlermeldung an sich scheint daher zu rühren, dass du als Argument einen Zeiger auf einen Zeiger gibst. (argv[1] ist bereits vom Typ char*)
    Also muss Zeile 9 schonmal heißen:

    int *i = getpwnam(argv[1]);

    Aber ich glaube das mit dem int* ist auch nicht ganz passend...

    EDIT: Was willst du eigentlich damit ausgeben, bzw. wofür ist das Programm gedacht?

    EDIT2: So könnte ein brauchbares Programm damit aussehen:

    Code:
    #include <stdio.h>
    #include <sys/types.h>
    #include <pwd.h>
    
    int main(int argc, char *argv[], char enu)
    {
    	if (argc == 2)
    	{	
    		struct passwd* pGrPasswd = getpwnam(argv[1]);
    		printf("User: %s\n", pGrPasswd->pw_name);
    		printf("ID: %d\n", pGrPasswd->pw_uid);
    		printf("Group ID: %d\n", pGrPasswd->pw_gid);
    		printf("Heimverzeichnis: %s\n", pGrPasswd->pw_dir);
    		printf("User Shell: %s\n", pGrPasswd->pw_shell);
    	}
    	else{printf("Falsch aufgerufen!");}
    }
     
Thema: C getpwnam()
Besucher kamen mit folgenden Suchen
  1. c getpwnam

    ,
  2. c99 getpwnam windows

    ,
  3. getpwnam () in c

    ,
  4. getpwnam( c,
  5. getpwnam c,
  6. getpwnam c -excel
Die Seite wird geladen...

C getpwnam() - Ähnliche Themen

  1. roter Balken bei Laufwerk c weg

    roter Balken bei Laufwerk c weg: Hallo, mein Problem ist, Laufwerk c zeigt plötzlich keinen roten Balken mehr an. (Speicher voll) Das Laufwerk an sich wird angezeigt.. Wie bekomme...
  2. C# und MySQL

    C# und MySQL: Hallo zusammen! Ich bräuchte dringend hilfe von Experten, da ich ein totaler Anfänger bin. Ich habe eine vorhandene Excel Tabelle. Diese soll in...
  3. Aufrunden einer int in C

    Aufrunden einer int in C: Hi Leute, wie kann ich in C eine Zahl wie 53 auf die nächst größere Zahl welche durch 10 Teilbar ist aufrunden? Also von 53 auf 60 oder von 44...
  4. Visual C++ Problem

    Visual C++ Problem: Hallo Zusammen, habe neuerdings ein problem mit visual C++ wie es scheint. bei einigen Spielen startet er gar nicht mehr erst "Es wurde ein...
  5. String auswerten in C ?

    String auswerten in C ?: hi Leute, hab da ein kleines Problem. Und zwar habe ich aus einer sehr großen Datei geschafft eine Zeile die ich brauche so suchen zu lassen...