» »

[C] brisanje presledkov

[C] brisanje presledkov

eXoo ::

Rad bi izbrisal presledke v nizu in mi nekak ne gre:
if(*niz == ' ')
{
   // niz je recimo llll llll        llll
   // moram pa izpisat llllllllllll
   // probal sem tudi z isspace() vendar mi briše samo 1 presledek v nizu....
}


hvala.

ERGY ::

eXoo je izjavil:

Rad bi izbrisal presledke v nizu in mi nekak ne gre:

if(*niz == ' ')
{
// niz je recimo llll llll llll
// moram pa izpisat llllllllllll
// probal sem tudi z isspace() vendar mi briše samo 1 presledek v nizu....
}


hvala.


Z isspace mogoče rabiš while. Kaj praviš?

eXoo ::

ja, kako pa naj nastavim while?

nekaj takega sem razmišljal :
   while(isspace(*niz) != NULL)
   {
      // kako polj zbrisem? z erase(*niz) ?
   }

Trinitron ::

Premikati se moraš po vseh znakih (npr. s for zanko). Če je znak različen od presledka, ga shraniš v npr. niz2, sicer preskočiš. Končni rezultat bo v niz2.

Jean-Paul ::

char niz[] = "llll llll        llll";
char *ptr1 = niz;
char *ptr2;

for (ptr2 = niz; *ptr2; ptr2++)
  if (*ptr2 != ' ')
    *ptr1++ = *ptr2;
*ptr1 = '\0';

printf("%s\n", niz);

Zgodovina sprememb…



Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C] Razbitje stringa s pomočjo indeksov

Oddelek: Programiranje
5850 (728) Shinobi
»

C# Iskanje besed

Oddelek: Programiranje
91794 (1644) Spura
»

Pomoc v C-ju

Oddelek: Programiranje
51334 (1246) rfmw
»

štetje vpisanih znakov

Oddelek: Programiranje
81367 (1280) bostek

Več podobnih tem