Мой учитель сказал нам использовать «&» для сохранения значений в желаемых нами переменных, однако я попытался использовать scanf () и попытался сохранить значения для некоторых переменных без «&», и я заметил, что это все еще работает просто отлично? Влияет ли это на мой код, несмотря на то, что я думаю, что это не так?
Вот коды, которые я пробовал. Код является частью для проверки того, является ли второй вход подстрокой.
Оригинальная форма, которую преподает мой учитель:
int main(){
char word1[100], word2[100];
int length1, length2;
printf("Enter the a word: \n");
scanf("%s", &word1);
printf("Enter the potetial substring: \n");
scanf("%s", &word2);
for(length1=0; word1[length1]!='\0'; length1++);
for(length2=0; word2[length2]!='\0'; length2++);
if (length1<length2)
{
printf("Second input is not a substring.\n");
}
Затем я настроил часть, где программа запрашивает входные данные для этого:
printf("Enter the a word: \n");
scanf("%s", word1);
printf("Enter the potetial substring: \n");
scanf("%s", word2);
Я все еще получил тот же вывод, даже если я удалил "&". Надеюсь, кто-то может объяснить, влияет ли это изменение на мои коды каким-то образом, о котором я могу не знать, спасибо.