Так что я новичок в программировании. И я нашел этот код из Quora при поиске различных вариантов использования void в C. Сначала я предположил, что он будет иметь результат:
"До обмена: 5, 10
После замены: 10, 5 "
Но я получаю вывод:
"До обмена: 5, 10
После замены: 5, 10 "
вместо.
Я чувствовал, что мне нужно изолировать либо
"swap (num1, num2);"
"printf (" После замены:% d,% d \ n ", num1, num2);"
или
"int num1 = 5, num2 = 10;"
из остальных операторов внутри главной функции.
Я попытался объявить "int num1 = 5, num2 = 10;" за пределами основного, а также попытался поместить его внутри функции подкачки. Это не сработало.
// The problem
void swap( int var1, int var2 )
{
int temp;
temp=var1;
var1=var2;
var2=temp;
}
void main( )
{
int num1= 5, num2 = 10;
printf("Before swapping: %d, %d \n", num1, num2);
swap(num1, num2);
printf("After swapping: %d, %d \n", num1, num2);
}
Итак, каковы мои варианты, чтобы получить желаемый результат:
"До обмена: 5, 10
После замены: 10, 5 "