Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
Vorsicht, strtok verändert den Ursprungsstring und die Token sind direkte Zeiger in diesen String. Bei Verwendung von strcat dürfen der Quell- und Zielstring sich nicht überlappen!zB mit strcat
Je nachdem wie du das programmiert hast. Zeig deinen Code.Wie würde das denn dann gehen, das ich das \0 in ein leerzeichen auffülle?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void willkommen(void);
void willkommen(void)
{
printf("Wordswap\n--------------\n"
"Das Programm ersetzt Woerter"
"aus einer Textdatei!!\n\n\n");
}
int main(void)
{
//initialisierung
FILE* srcfile;
char leer[] = " ";
char name1[256];
char name2[256];
char buffer[256];
char SpBuff[256];
char *wort;
size_t laenge,laenge1;
willkommen();
printf("Welches Wort soll ersetzt werde: ");
gets(name1);
putchar('\n');
printf("Durch welches Wort soll \"%s\" ersetzt werden: ",name1);
gets(name2);
printf("\n\n");
laenge = strlen(name1);
laenge1 = strlen(name2);
srcfile = fopen("test.txt","r+b");
while(fgets(buffer,256,srcfile)!= NULL)
{
wort = strtok(buffer,leer);
while(wort != NULL)
{
if(strstr(wort,name1))
{
strncpy(SpBuff,name1,laenge);
strncpy(buffer,name2,laenge1);
fputs(name2,srcfile);
}
else
{
break;
}
wort = strtok(NULL,leer);
}
strcat(buffer,wort);
}
fclose(srcfile);
return EXIT_SUCCESS;
}
while(fgets(buffer,256,srcfile)!= NULL) {
char buf[500] = { '\0' };
wort = strtok(buffer,leer);
while(wort != NULL) {
if (strcmp(wort, name1) == 0) {
strcat(buf, name2);
} else {
strcat(buf, wort);
}
strcat(buf, " ");
wort = strtok(NULL, leer);
}
puts(buf);
}
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void willkommen(void);
void willkommen(void)
{
printf("Wordswap\n--------------\n"
"Das Programm ersetzt Woerter"
"aus einer Textdatei!!\n\n\n");
}
int main(void)
{
//initialisierung
FILE* srcfile;
FILE* file;
char leer[] = " .,?!-";
char name1[]={0};
char name2[256]={0};
char buffer[256]={0};
char *wort;
int i = 1;
// size_t laenge,laenge1;
char buf[500] = { '\0' };
willkommen();
printf("Welches Wort soll ersetzt werde: ");
gets(name1);
putchar('\n');
printf("Durch welches Wort soll \"%s\" ersetzt werden: ",name1);
gets(name2);
printf("\n\n");
//laenge = strlen(name1);
//laenge1 = strlen(name2);
srcfile = fopen("test.txt","r");
file = fopen("test2.txt","w+");
while(fgets(buffer,256,srcfile)!= NULL)
{
wort = strtok(buffer,leer);
while(wort != NULL)
{
if (strcmp(wort, name1) == 0)
{
strcat(buf, name2);
}
else
{
strcat(buf, wort);
}
strcat(buf, " ");
wort = strtok(NULL, leer);
}
}
fputs(buf,file);
fclose(srcfile);
fclose(file);
return EXIT_SUCCESS;
}