Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z prywatnym zadaniem (tablice, for i ASCII)

Ostatnio zmodyfikowano 2012-01-24 16:58
Autor Wiadomość
MrMB
Temat założony przez niniejszego użytkownika
Problem z prywatnym zadaniem (tablice, for i ASCII)
» 2012-01-23 21:30:04
Witam.
Zgłaszam się do was z problemem, który dla mnie brzmi dosyć banalnie, ale jednak nie jest taki prosty do rozwiązania go przeze mnie.
Chodzi mi o napisanie programu, który będzie wczytywał łańcuch znaków, później każdy z tych znaków ma zostać wyświetlony w kodzie ASCII w systemie ósemkowych. Pierwsza moja myśl to tablice, pętla for a kod ASCII w systemie ósemkowych sprawdzę później jak zrobić. Lecz..
Próbowałem skorzystać z tablic jako parametrów, nie wiem też jak stworzyć tablicę typu char lecz bez określania jej rozmiaru.
Czy ktoś pomoże lub da jakąś wskazówkę?
P-49234
malan
» 2012-01-23 21:32:04
Hmmm... tablica typu
char
, której rozmiar nie jest znany podasz kompilacji? » standard C++vector :)
P-49235
hello_world
» 2012-01-23 21:41:01
C/C++
char a;
for( int i = 97; i < 123; i++ )
{
    a =( char ) i;
    cout << i << " : " << a << endl;
}

Przepraszam nie zrozumiałe pytania i wypisałem głupotę
P-49237
MrMB
Temat założony przez niniejszego użytkownika
» 2012-01-23 21:49:50
To może inaczej. Na początek jak zrobić, aby ilość wpisanych znaków była rozmiarem tablicy?

EDIT:
To jest dla mnie naprawdę bardzo ważne.
P-49238
CodeMeister
» 2012-01-23 22:05:35
wiec tak: rozmiar standardowej tablicy musisz znac w trakcie kompilacji, @malan napisal ci co masz zrobic.  ale w tym celu lepiej uzyc stack niz vector, moze to sie wydaje trudne ale obczaj odnosnik malana i zobacz powiazane (wlasnie ten stack)
P-49239
SeaMonster131
» 2012-01-23 22:08:06
rozmiar standardowej tablicy musisz znac w trakcie kompilacji
Ale tak apropo, dlaczego Code::Blocks przy:
C/C++
int n;
cin >> n;

char tablica[ n ];
Takim kodzie nie zwróci żadnego błędu itd, i program będzie działał poprawnie? Nawet jeżeli później odniosę się do jakieś komórki np
tablica[ n - 2 ] = 'a';
 to faktycznie ta komórka taki znak będzie zawierała?

Sorki za takie wtrącenie do tematu, ale każdy pisze że musi być znany rozmiar podczas kompilacji ( sam tak cały czas myślę[-ałem] ), a jednak takie coś sie kompiluje.. -.-
P-49240
CodeMeister
» 2012-01-23 22:11:08
hmm... moze jednak sie da :)
P-49241
konri1990
» 2012-01-23 22:14:35
To zależy od kompilatora, tak mi się wydaję. Swoją drogą na Borlandzie też takie coś chyba przechodzi bez znajomości rozmiaru tablicy, jednak mimo wszystko powinno się znać rozmiar żeby uniknąć wycieków pamięci.

Co do problemu na ilość znaków w tekście, polecam oczywiście bibliotekę string, a w niej funkcję length(). Z jej pomocą będziesz wiedział ile znaków ma wczytany ciąg znaków.
P-49242
« 1 » 2 3
  Strona 1 z 3 Następna strona