I dano zadanie w szkole, aby napisać program, któryC Program ciąg
- Odsłon trzy ciągi
- Przechowuje trzeci ciąg w dynamicznie przydzielonej pamięci
- wydrukować ostatnie 4 litery pierwsze słowo alfabetycznie.
Oto program, który do tej pory miałem. Łańcuchy są przechowywane w różnych zmiennych, co utrudnia ich sortowanie. Jeśli ktokolwiek mógłby mi pomóc i pomóc mi zakończyć ten program, byłbym bardzo wdzięczny.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char word1[101];
char word2[101];
char* word3;
char buffer[101];
scanf("%s", word1);
scanf("%s", word2);
scanf("%s", buffer);
word3 = (char *) malloc(strlen(buffer)+1);
strcpy(word3, buffer);
return 0;
}
+1 za zadanie domowe z aktualnym kodem! – ceejayoz
@eejayoz me too: p – jcolebrand
'scanf ("% s ", słowo)' jest niebezpieczne. Pytasz o błąd przepełnienia bufora. Po prostu wpisz ciąg znaków, który przekracza 100 znaków, a BOOM - przepełnienie bufora. Ogranicz maksymalny rozmiar skanowania za pomocą 'scanf ("% 100s ", słowo)'. Więcej informacji można znaleźć na stronie http://en.wikipedia.org/wiki/Scanf#Security. – daotoad