Tôi có một đoạn mã được viết bằng C trong đó một số số học con trỏ được thực hiện. Tôi muốn biết làm thế nào đầu ra đến được điều này?Đầu ra của chương trình này ra sao?
#include <stdio.h>
int main()
{
char arr[] = "gookmforgookm";
char *ptr1 = arr;
char *ptr2 = ptr1 + 3;
printf ("ptr2 - ptr1 = %d\n", ptr2 - ptr1);
printf ("(int*)ptr2 - (int*) ptr1 = %d", (int*)ptr2 - (int*)ptr1);
getchar();
return 0;
}
Output là dưới đây:
ptr2 - ptr1 = 3
(int*)ptr2 - (int*) ptr1 = 0
thú vị. Tôi sẽ cố gắng tìm một giải pháp. +1 – ApprenticeHacker