Tôi phải sử dụng con trỏ để hoán đổi int trong một mảng. Nó biên dịch không có lỗi hoặc cảnh báo và chạy nhưng không hoán đổi int. Bất kỳ đề nghị sẽ là hữu ích!!!Sử dụng con trỏ để hoán đổi các giá trị mảng int
Dưới đây là các thử nghiệm:
#import <stdio.h>
void swap(int ary[]);
int main( int argc, char*argv[])
{
int ary[] = { 25, 50 };
printf("The array values are: %i and %i \n", ary[0], ary[1]);
swap(ary);
printf("After swaping the values are: %i and %i \n", ary[0], ary[1]);
return 0;
}
Dưới đây là chức năng hoán đổi:
void swap(int ary[])
{
int temp = *ary;
*ary = *(ary + 1);
*ary = temp;
}
Đây là những gì được hiển thị sau khi chạy:
The array values are: 25 and 50
After swaping the values are: 25 and 50
wow tôi cảm thấy ngu ngốc bây giờ! –
Tôi nghĩ tất cả chúng ta đều ở đó. –
Thật vậy, sử dụng '[]', nó sạch hơn nhiều. – GManNickG