Dobrý den, mám tu jeden menší problém, zkoušel jsem napsat funkci která by rozdělovala řetězec na základě nějakého oddělovače(něco jako je v pythonu funkce split). Řetězec se rozdělí na části a zapíše do souboru, ale při načtení souboru se nenačte vždy 1. znak na novém řádku, zkoušel jsem všechno možné, ale nevím, co s tím. Nejspíš to bude nějaká malá drobnost ve skriptu. Pomohl by mi někdo? Tady je skript:
#include <stdio.h>
char a[]="tohle;je;nejakej;text";
void split(char vstupni[200],char oddelovac){
char slova[200];
FILE *file=fopen("cache","w");
int delka=0;
int c=0;
for(int f=0;f<200;f++){
delka=f;
if(vstupni[f]==0)break;
}
for(int b=0;b<delka;b++){
if(vstupni==oddelovac&&b>0)fprintf(file,"\n");
else fprintf(file,"%c",vstupni);
}
fclose(file);
file=fopen("cache","r");
while(fscanf(file,"%s",&slova[c])!=EOF){
c++;
printf("%s\n",&slova[c]);
}
}
int main(){
split(a,(char)';');
getchar();
return 0;
}