[C++]Czy powtarza się char

Witam. Mam problem z algorymem sprawdzającym czy w podanej tablicy znaków char znajdują się takie same wartości i kasowaniu powtarzających się znaków.

Z początku wydawało mi się proste ale taraz jak siedzę nad tym od trzech godzin to… a nieważne :?

Oto kod:

Dynamiczna alokacja globalnej tablicy:

Funkcja odpowiedzialna za sprawdzanie powtórzeń:

I funkcja wykorzystująca to sprawdzanie:

Liczę na szybką i pomocną odpowiedź :slight_smile:

Korzystanie ze zmiennych globalnych w funkcjach jest złe. Kod zupełnie niedostosowany do zmian.

for(int i = 3; i > -1; --i)

{

if(powtarzasie(pass[i]) == true || i != 0)

{

...

Skąd wziąłeś takie warunki? Ten kod jest bezsensowny jak dla mnie. Może poczytaj najpierw trochę o C++, wyrzuć ten kod i zacznij od początku?

http://www.cplusplus.com/reference/algorithm/unique/

Na jakiej podstawie twierdzisz, że korzystanie ze zmiennych globalnych jest złe?

Co do czytania to przeczytałem już dość dużo (2 całe książki i sporo materiału w sieci).

Jeżeli ten kod jest bezsensowny(a być może tak jest bo bardzo dużo kombinowałem) to powiedz mi w czym problem a ja to poprawię.

edit.

Serdeczne dzięki nr47, tak się zapędziłem, że zapomniałem poszukać gotowych instrukcji w internecie. Thx :slight_smile:

Skoro po przeczytaniu tyle materiału sam nie zauważyłeś dlaczego nie powinno się używać zmiennych globalnych to Wikipedia niech Ci podpowie:

A kolega pewnie opiera się swoje stwierdzenie na doświadczeniu. Warto czasami posłuchać “starszych”. Powodzenia w kodowaniu :wink:

http://pl.wikipedia.org/wiki/Zmienna_globalna

dobra zakumałem, masz trochę racji… przy większych aplikacjach i wielu wątkach program może crushować - ale z drugiej strony i tak wszystko zależy od pragramisty :stuck_out_tongue: mimo to thx all za cenne uwagi :slight_smile: