Witam,
czy istnieje w c jakaś metoda zapisu danych string do tablicy (wiem, że da się to bardzo prosto zrobić w c++)
z góry dzięki
[C] tablica string (char)
- argv
- Użytkownik
- Posty: 569
- Rejestracja: 27 maja 2009, o 01:27
- Płeć: Mężczyzna
- Podziękował: 51 razy
- Pomógł: 66 razy
[C] tablica string (char)
W C nie ma string wiec nie wiem o co chodzi
Byc moze chodzi Ci o to:
Byc moze chodzi Ci o to:
Kod: Zaznacz cały
http://www.cplusplus.com/reference/string/string/c_str/
-
- Użytkownik
- Posty: 735
- Rejestracja: 7 lis 2005, o 23:56
- Płeć: Mężczyzna
- Lokalizacja: Łódź
- Podziękował: 2 razy
- Pomógł: 133 razy
[C] tablica string (char)
W C++:
w C:
Obydwa fragmenty kodu pracują na 10 elementowej tablicy napisów - w pierwszym wypadku nie masz (prawie) ograniczeń co do długości napisu, w drugim max 19 liter (możesz zmienić sobie w kodzie jak chcesz).
Swoją drogą porównanie ilości kodu wypada ciekawie
Jakby coś nie działało pisz, nie wklepywałem w kompilator
[edit]
no tak, w C nie ma new i delete.. poprawione
Kod: Zaznacz cały
string tab[10];
Kod: Zaznacz cały
char **tab = (char**) malloc(10*sizeof(char*)); // tworzymy tablice na 10 napisow
int i;
for(i = 0; i < 10; i++)
{
tab[i] = (char*) malloc(10*sizeof(char)); // tworzymy napis maksymalnie 19 literowy - 20 znak to zawsze 0
tab[i][0] = 0; // żeby automatycznie były puste napisy - jeśli nie to w pamięci będą śmieci
// jest to krok opcjonalny
}
// tutaj operujesz na napisach
// i trzeba je usunąć
for(i = 0; i < 10; i++);
free(tab[i]); // usuwanie każdego elementu tabeli
free(tab); // usuwanie tabeli
Swoją drogą porównanie ilości kodu wypada ciekawie
Jakby coś nie działało pisz, nie wklepywałem w kompilator
[edit]
no tak, w C nie ma new i delete.. poprawione