Почему я получаю мусорное значение в выходных данных вместе с результатом?
#include <stdio.h> void fun (char s1[]); #define size 10 int main() { char s1 [size]="feb"; fun (s1); return 0; } void fun (char s1[]) { char s2[size]; int i=0; while (*s1 !='\0') { s2 [i]=*s1; s1++; i++; } printf ("\n%s",s2); }
Что я уже пробовал:
Приведенный выше код - это всего лишь пример. Я хотел сравнить две строки в функции. Поэтому я передаю строку в другую символьную переменную. Но это приводит к мусорной стоимости вместе с результатом. Почему сюда были добавлены мусорные значения?