Funkce vrátí hodnotu a ty ji musíš někam uložit, jinak se ztratí. V tvém případě asishort a = 0;a = funkce(a);