int main()
{
int i = 0;
char input[] = { 0 };
char inputArray[20] = "xin chao ";
char * pointer = inputArray;
//gia tri pointer truoc khi scanf()
for (i = 0; i < 20; i++) {
printf("Adress: %d [%d]: %d ==> %c \n", pointer+i, i, *(pointer+i), *(pointer+i));
}
scanf("%s", input);
printf("Input la: %s\n", input);
//gia tri pointer tu dong thay doi
for (i = 0; i < 20; i++) {
printf("After Adress: %d [%d]: %d ==> %c \n", pointer+i, i, *(pointer+i), *(pointer+i));
}
}
đây là kết quả khi mình chạy
thực sự rất kì lạ, rõ ràng mình không tác động gì đến biến pointer nhưng các giá trị nó lại bị thay đổi, mình xem đi xem lại nhưng không hiểu chuyện gì đang diễn ra?
Mong các bạn giúp đỡ, mình cảm ơn.