#include;
void main()
{
char *ptr = "csdn";
printf( "%c\n",*(ptr++) );
}
#include;
void main()
{
int i = 10;
i << 1;
i >> 5;
printf( "%d\n", i);
}
结果是什么,不许用编译器,看题后5秒钟内开始回答,还要说出原因.
第一个是c,ptr++是在语句执行完后才执行++操作的,有没有括号都一样。
第二个是10,单独的没有赋值的移位操作是不会改变原数大小的。
如果改成i=i<<1;i=i>>5;的话,结果就是0了。
汗啊!第二个我竟然做错了,春到去移位。
阅读(948) | 评论(2) | 转发(0) |