add (char * ins_s, char ** str, int n); delet (char ** str, int n, int N); change (char * rus, char * eng, char ** et); file_size (FILE * stream); hello () p>
{
printf ("Програма для транслітерації. nМожливо дії: n
. Запустити через командний рядок, і ввести назву файлу. N
. Параметр в консолі '-t' запускає тест програми. "); p align="justify">} test ()
{* slname = "slovar.txt"; * test = NULL; = "test.txt"; * test_rus = read_tr (test); (test_rus == NULL)
{(); ("Помилка тесту 1: не знайдене або пошкоджений файл test.txt.");
stop;;
} (slname); * englt = trans (test_rus); (strcmp (englt, "shiroko"))
{
printf ("Помилка тесту 2: пошкоджено словник або заданий користувальницький.");
stop;;
}
/* for (int i = 0; i
{(slov [i]. rus);
(* slov). rus [i] = NULL; (slov [i]. eng);
(* slov). eng [i] = NULL;
} */(slov); (englt); (test_rus);
} savetext (char * text)
{* file; = fopen ("trans.txt", "wb"); (file) (file, text);
} add (char * ins_s, char ** str, int n)
{* a = NULL, * ostat = NULL; len1 = strlen (* str); (n> len1); len2 = strlen (ins_s);
* str = (char *) realloc (* str, len1 + len2 +1) ;//подовження рядка = * str + n; = (char *) malloc (strlen (a) +1 ); (ostat == NULL)
{("Недостатньо пам'яті");;
exit (1);
}
strcpy (ostat, a) ;//збереження залишку рядка
strcpy (a, ins_s) ;//додали ins_s (* str, ostat) ;//приписали залишок (ostat);
} delet (char ** str, int n, int N)
{* ostat = NULL, * a = NULL; len = strlen (* str); (n> len) (len
ostat = (char *) malloc (strlen (a) +1) ;//виділяємо під залишок пам'ять
if (ostat == NULL)
{
printf ("Недостатньо пам'яті");
stop; (1);
} (ostat, a + N);
/* Записуємо в залишок все, що після видаляється підрядка.
"а" вказує на початок видаляється рядка, вона містить count символів, тоді
а + N вказує на кінець видаляється рядка */
strcpy (a, ostat);
/* Пишемо залишок тексту поверх вихідного тексту з того місця, де колись починалася підр...