#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char print_two(char *reg, char *s)
{
int i, l_s = (int) strlen(s), l_reg = (int) strlen(reg);
for(i = 0; i < l_reg; i++)
{
printf("\n %c \n", reg[i]);
}
return 0;
}
int main(void)
{
char reg;
printf("Give a rule: ");
scanf("%s", ®);
char s;
printf("Give a string: ");
scanf("%s", &s);
print_two(®, &s);
return 0;
}
Старт программы:
Give a rule: qwert
Give a string: asdf
result:
d
q
a
s
d
f
Как избежать перезаписи reg
на s
?
Пробовал с realloc, malloc - 0 эффекта.
Две переменные должны быть динамическими.
Возможно ли это сделать?
пользователь дает 55 символов -> массив 55
пользователь дает 100 символов -> массив 100
scanf("%s, ...)
читает ввод только до первого символа пробела!? - person Werner Henze   schedule 28.01.2013