[ milan82 @ 27.03.2006. 18:08 ] @
Malo sam zahrdao u C-u a treba mi slijedece: imam neko polje znakova (npr. char polje [50]) koje trebam procitati od prvog znaka do znaka "-", i ono sto je procitano mi treba kao nova varijabla.
[ X Files @ 27.03.2006. 19:08 ] @
U C-u to bi moglo na primer ovako /NETESTIRANO/

Code:

char tekst[50] = "abcdefghi-123456789";
char novi[50] = {0};

char sta_se_trazi = '-';

char *gde_je_prvo_pojavljivanje;

gde_je_prvo_pojavljivanje = strchr( tekst, sta_se_trazi );

if ( gde_je_prvo_pojavljivanje )
{
   strncpy( novi, tekst, gde_je_prvo_pojavljivanje-tekst );
}
else
{
   // nema znaka koji se trazi
}


EDIT:

E sad, ne secam se da li je {0} po C standradu, pa ako ga kompajler nece, onda moras
da uradis ove izmene:

Umesto:
char novi[50] = {0};
Stavi:
char novi[50];

Ispod reda:
strncpy( novi, tekst, gde_je_prvo_pojavljivanje-tekst );

Dodaj jos ovaj red:
novi[gde_je_prvo_pojavljivanje-tekst] = '\0';


[Ovu poruku je menjao X Files dana 27.03.2006. u 20:11 GMT+1]
[ idb @ 27.03.2006. 20:36 ] @
Danas nesto puno pitanja o char pa da ponovim: procitajte
Code:
#include <string.h>
  char *strtok( char *str1, const char *str2 );

a evo i primera:
Code:
// Dev-Cpp 4.9.9.2
#include <stdio.h>
#include <string.h>
int main (){
  char str[] ="Procitaj ovo-Ovo nemoj!";
  char var[50];
  char * pch; 
  pch = strtok (str,"-");
  if (pch != NULL) sprintf (var,"%s",pch);
  printf("Provera: %s\n",var);
  system("pause");
  return 0;
}

idb
[ kurt.hectic @ 28.03.2006. 16:37 ] @
Dakle stvarno, ljudi...

Code:

#include <stdio.h>

int main () {
  char s[50];

  scanf("%[^-]", s);
  printf("%s\n", s);
  return 0;
}
[ idb @ 28.03.2006. 18:22 ] @
Code:
scanf("%[^-]", s);

svidja mi se
:))
idb