¹ØÓÚcÖ¸ÕëµÄÒ»¸öÎÊÌâ...¶àл...
#include <stdio.h>
int main(void)
{
int a[5] = {1, 2, 3, 4, 5};
int (*p)[5];
int *ptr;
p = &a;
//printf("*p : %d\n", **p);
ptr = (int *)(p+1);
//printf("*ptr : %d\n", *ptr);
printf("the result id : %d\n", *(ptr-1));
return 0;
}
ÔËÐнá¹ûÊǶàÉÙ£¿ÎªÊ²Ã´£¿ÇëÏêϸ½âÊÍÏÂ...ллǰ±²£¡
ding
1
ÖªµÀµÄ¿ì°ïæ½âÊÍÏÂŶ...´ð°¸²»ÊÇ1...¼±...
ÊÇ5°É!
int (*p)[5];
pÊÇÊý×éÖ¸Õë,Ö¸ÏòÒ»¸ö°üº¬5¸öintÐÍÔªËØµÄÊý×é!
p = &a;
pÖ¸ÏòÁËÊý×éa.
p+1 ÊÇÔ½¹ý5¸öintÐÍÔªËØµÄÊý×éµÄ·¶Î§,Ö¸ÏòÏÂÒ»¸ö°üº¬5¸öintÐÍÔªËØµÄÊý×é!ÕâÀïÓ¦¸ÃÊDz»È·¶¨µÄ!
ptr = (int *)(p+1);
ptr Ö¸ÏòµÚ¶þ¸öÊý×éµÄÊ×ÔªËØµØÖ·.
ptr-1 µ±È»¾ÍÖ¸ÏòÁËǰһ¸öÊý×éµÄ×îºóÒ»¸öÔªËØ.ÕâÀï¾ÍÊÇaµÄ×îºóÒ»¸öÔªËØ.
*(ptr - 1)¾ÍÓ¦¸ÃÊÇaµÄ×îºóÒ»¸öÔªËØÖµ!
Ó¦¸ÃÊÇÕâÑùµÄ°É!
p=&a;ÕâÀïºÃÏñÓÐÎÊÌâ
Ïà¹ØÎÊ´ð£º
±àÒëÆÕͨµÄcûÎÊÌâ°¡£¬µ«±àÒëjavahÉú³ÉµÄ¾Í±¨´í£º
gcc -O0 -g3 -Wall -c -fmessage-length=0 -oHelloWorld.o ..\HelloWorld.c
gcc -otest.exe HelloWorld.o
d:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../. ......
ÎÒÓÃPHPÀ©Õ¹Cʱ£¬ÓõÄÊÇÔ´ÂëextĿ¼ÏµÄ./ext_skel
×îºó±àÒë×ÜÊDz»ÄÜÉú³ÉÀ©Õ¹Ä£¿éµÄ.so¶¯Ì¬¿â£¬ÎÒÓõİ汾ÊÇ5.3.0£¬
ÕâÊÇÔõô»ØÊ£¬¸ßÊÖ½â´ðÏÂ
²»ÄÜÉú³ÉʱÓÐɶÌáʾÐÅÏ¢£¿
ÔËÐÐÁË/ext_skel --extname=Ä ......
ÎÊһϣº
#include <stdio.h>
int main()
{
char x, y, z;
int i;
int a[16];
for(i=0; i<=16; i++)
{
a[i] = 0;
......
¹¤×÷ÄÚÈÝ Ñз¢
×ʸñÒªÇó£º
211ºÍÖØµãԺУ±¾¿Æ 3Ä깤×÷¾Ñé
211ºÍÖØµãԺУ˶ʿ 1Ä깤×÷¾Ñé
ÆÕͨԺУÔÚ¹¤×÷ÄêÏÞÉϸ÷¼Ó1Äê
ÓÐͨÐÅÏà¹Ø¿ª·¢¾ÑéÕßÓÅÏÈ£¬µ±È»C/C++ »ù´¡ÒªÔúʵ
à ......
#include <stdio.h>
main()
{
int a,b,sum;
a=1;b=2;
sum=a+b;
printf("sum is %d\n");
}
½á¹ûÊÇ£º2367460
Ϊʲô£¿
printf("sum is %d\n", ......