Pretoze tuna:
Kód:
char *wu = "";
je udaj "" ulozeny v pamati iba na citanie. Nie je mozne do nej zapisovat ( tym, ze das za premennu typu char* v jej definicii znak rovna sa, v pamati iba na citanie sa vytvori konstantna, v tomto pripade prazdny retazec a jej adresa sa ulozi do wu, kedze wu je iba smernik ). Ak chces do pamate zapisovat, vytvor ju takto:
Kód:
char wu[20];
pripadne mozes aj tak, ako si mal predtym (no bez priradenia nejakej konstanty, inak sa stane to, co som popisal vyssie ), ale potom musis alokovat potrebnu pamat, ktorej zaciatok sa ulozi do tejto premennej. Takto:
Kód:
char* wu;
wu = malloc( 20 * sizeof( char ) );
A potom, ak uz premenna wu nebude potrebna, mala by sa alokovana pamat uvolnit:
Kód:
free( wu );