#include <string.h>
#include <stdio.h>
int main(int argc, char *argv[])
{
unsigned char *text, *key;
unsigned char shift, rightNumber;
for (text = argv[1], key = argv[2]; *text; text++, key++) {
if (0 == *key)
key = argv[2];
if (*text >= 'A' && *text <= 'Z') {
shift = *key - 'A';
rightNumber = *text + shift;
if (rightNumber > 'Z')
rightNumber -= ('Z' - 'A');
printf(""%c + %c '%.3d' == "%c\n", *text, *key, shift, rightNumber);
}
}
1 + 1 * 2 => <число(1)> <плюс> <число(2)> <умножить> <число(2)>
typedef enum {
red,
yellow,
green
} color;
color traffic_light_state;
traffic_light_state = red;
typedef enum {
red = -1,
yellow,
green = 3
} color;
open(name, O_RDONLY | O_BINARY)
, пишете подпрограмму, которая читает файл посимвольно, пропускает всё до первой буквы, читает пока не встретится небуквенный символ, возвращает слово. В основном цикле получаете из подпрограммы слово, записываете его в словарь. Если пишете на чистом C, то словарь придётся реализовать самому, например как дерево.unsigned char buf[1024];
read(f, buf, 1024);
unsigned long int *p = (unsigned long int *)(buf+*((unsigned long int *)(buf+2)));
unsigned long int *q = (unsigned long int *)(buf+*((unsigned long int *)(buf+10)));
for (p < q)
*(p++) = 0;
char str[20] = "Прпущен символ";
strcpy(str+3, str+2);
str[2] = 'о';
printf("%s\n", str);