Stránka 1 z 1
Rozdělení stringu
Napsal: 30 bře 2013 11:05
od Majrou
čau, mohl by mi někdo pomoct? jak rozdělím libovolně dlouhý string do sloupců podle délky n? v jazyce C.
např: ABCDEFGHABCDEFG
chci: n=4
A B C D
E F G H
A B C D
E F G H
díky za pomoc!
Re: Rozdělení stringu
Napsal: 30 bře 2013 12:51
od domitea
String v céčku není (aspoň standardně), takže je na to pole charů a u toho stačí jeden cyklus a podmínka

Re: Rozdělení stringu
Napsal: 30 bře 2013 13:05
od CZechBoY
čau,
celkem jednoduše..
nejdřív si naalokuješ paměť pro řádky a potom pro pole charů určité délky
zkusim něco vyplodit, ale už jsem v Céčku dlouho nedělal zas

C píše:char* retezec = "csdfdvnndvnfkckjndvkvndfjkndvk";
int delka = strlen(retezec);
int sloupcu = 4;
int radku = delka/sloupcu;
char** tabulka = malloc(sizeof(char*) * radku);
for(int i=0; i < radku; i++) {
tabulka[i] = malloc(sizeof(char) * delka);
for(int c=0; c < sloupcu; c++) {
tabulka[i][c] = retezec[i][c];
}
}
Re: Rozdělení stringu
Napsal: 30 bře 2013 16:33
od Majrou
diky za rady... ale ten tvuj kod nejak nefunguje

Re: Rozdělení stringu
Napsal: 30 bře 2013 16:34
od CZechBoY
netestoval jsem ho, o víkendu jsem trochu líný :-)
toto byl návod...
co to znamená "nefunguje to"???
Re: Rozdělení stringu
Napsal: 30 bře 2013 18:45
od faraon
Prostě si udělej cyklus kterým ho vypíšeš po znacích (viz domitea), do něj dej počítadlo, a když dopočítá k n znakům, tak jednoduše odřádkuj a vynuluj ho.
Re: Rozdělení stringu
Napsal: 30 bře 2013 21:36
od domitea
Abych doplnil Faraona. Po n znacích vlož escape sekvenci na nový řádek neboli '\n'
