Aktív témák
-
Jester01
veterán
Az elsõ két problémára gyári megoldás az strtok függvény. Ha az nem tetszik, kézzel valami ilyesmi lehet:
char* nexttoken(const char** ptr, char delim)
{
char* ret = NULL;
if (*ptr && **ptr)
{
int length;
const char* start = *ptr;
const char* end = strchr(start, delim);
if (end == NULL)
{
length = strlen(start);
*ptr = NULL;
} else {
length = end - start;
*ptr = end + 1;
}
ret = malloc(length + 1);
strncpy(ret, start, length);
ret[length] = 0;
}
return ret;
}
Ha több delimiter van egymás után, akkor ez szépen üres stringeket fog visszaadni. A lista végén NULL-t kapsz, és minden visszaadott tokent neked kell free-vel felszabadítani (mint ahogy a 3. kérdésedben szereplõ strdup esetében is.)
Mivel hossz paramétert nem adsz át, ezért a bemeneti string végén ott kell legyen a lezáró nulla byte különben nagy baj lesz
Amúgy sokszor elég a token pozíciója és a hossza, ekkor megszabadulsz a memóriakezelés nyûgjétõl és gyorsabb is lesz.
Elismerem, hogy egy split az egyszerûbb
[Szerkesztve]
[Szerkesztve]
Aktív témák
- Allegro vélemények - tapasztalatok
- LEGO klub
- A fociról könnyedén, egy baráti társaságban
- Samsung Galaxy Watch7 - kötelező kör
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- sziku69: Fűzzük össze a szavakat :)
- Törölte az idei asztali csúcsprocesszorát az Intel
- Váratlanul ledobta asztali csúcs-Ryzenjét az AMD
- Futás, futópályák
- Tőzsde és gazdaság
- További aktív témák...
- Lenovo ThinkPad W541,15.6,FHD,i7-4810MQ,32GB DDR3,256GB SSD,K1100 2GB VGA,WIN10
- Samsung Galaxy Tab S10 Ultra 5G 12/256 2028.09.03-ig garancia
- iPad Pro M1 11 512GB wifi + Magic Keyboard + Apple Pencil
- 3TB Seagate Barracuda 3,5-es HDD-k
- Ryzen 7 5800X / AIO / NITRO+ RX 9060 XT 16GB / B550M WIFI / 32GB RAM / 1TB NVMe SSD / 650W GOLD
- GYÖNYÖRŰ iPhone 14 Pro 128GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen, MS4322
- GAMING PC! Ryzen 9 3900X / RTX 3080 / B550 / 16GB 3200MHz / 500GB NVMe / 1250w Gold! BezsámítOK
- AKCIÓ! GIGABYTE RTX 5080 AERO OC 16GB videokártya garanciával hibátlan működéssel
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Space Black-1 ÉV GARANCIA - Kártyafüggetlen, MS4143
- Gamer PC-Számítógép! Csere-Beszámítás! R7 5700 / RTX 2080Ti 11GB / 16GB DDR4 / 1TB SSD!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


