Jednoduchy program v C problem s enum – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Jednoduchy program v C  problem s enum – C / C++ – Fórum – Programujte.comJednoduchy program v C problem s enum – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Pavel
~ Anonymní uživatel
265 příspěvků
17. 5. 2010   #1
-
0
-

Ahoj, mam problem s enumeraci v C:

mam definovanou tuhle strukturu:

/* definice struktury(objektu) pracovnik */
typedef struct {
/* unikatni id */
int id;
/* pole znaku jako jmeno a prijmeni(max 10 znaku) */
char jmeno[POCET_ZNAKU_JMENO];
char prijmeni[POCET_ZNAKU_PRIJMENI];
/* typ pracovnia(enum) - ADM = administrativni / EXEC = vykonny */
typPracovnika typ;
} pracovnik;

takto nadefinovanou strukturu:
/* definice vyctoveho typu: typ pracovnika EXEC = vykonny, ADM = administrativvni */
typedef enum {
ADM,
EXEC,
} typPracovnika;


toho pridavam vteto metode:
/* pridani pracovnika do seznamu na danou pozici */
void pridejPracovnika(int pozice) {
smenaPracovniku[pozice] = vytvorPracovnika(id);
pocetPracovniku++;
id++;
}

nacteni jmena a prijmeni je vpohode, ale tady mam problem:

/* nacteni typu pracovnika 1 = ADM, 2 = EXEC */
void ctiTyp(typPracovnika typ) {
int volba = 0;
printf("Zadej typ pracovnka (1 = Administrativni, 2 -Vykonny): \n");
scanf("%d", volba);
switch (volba) {
/* tady je nakej problem :-( */
case 1:
typ = ADM;
break;
case 2:
typ = EXEC;
break;
default:
printf("spatna volba, pracovnik bude vytvoren jako aministrativni\n");
break;
}
}

nevim, jak mam do toho typu dosazovat :-(.....samozrejme sem o enum hledal info, ale ani to nmepomohlo :-(

jinak vystup:
3 [main] duc 6916 exception::handle: Exception: STATUS_ACCESS_VIOLATION
1122 [main] duc 6916 open_stackdumpfile: Dumping stack trace to duc.exe.stackdump

RUN FAILED (exit value 35 584, total time: 2s)


Predem moc diky za rady :-)


Nahlásit jako SPAM
IP: 88.101.151.–
Reklama
Reklama
m->29+6
Super člen
17. 5. 2010   #2
-
0
-

scanf("%d", &volba); Alebo môžeš použiť std::cin v C++.

Nahlásit jako SPAM
IP: 147.229.208.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 72 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý