C语言中移位运算

这一运算的详细解释

第1个回答  2012-06-27
char str[]={china};
memcpy(str, str+3,sizeof(str));
简单例子 不一定完全正确。
可以看下memcpy函数帮助,上面有示例
希望对你有点参考意义!
第2个回答  2012-07-17
按照平移的方向和填充数字的规则分为三种:<<(左移)、>>(带符号右移)和>>>(无符号右移)。在移位运算时,byte、short和char类型移位后的结果会变成int类型,对于byte、short、char和int进行移位时,规定实际移动的次数是移动次数和32的余数,也就是移位33次和移位1次得到的结果相同。移动long型的数值时,规定实际移动的次数是移动次数和64的余数,也就是移动66次和移动2次得到的结果相同。
特别注意对某变量进行移位操作时,变量本身不会变。byte、short和char类型移位后的结果会变成int类型。表达式int a=(b<<24)+(c<<16)(b,c为char型)是正确的虽然b、c均只有8位。
第3个回答  2012-07-02
比如你的程序吧,像楼上的,
char str[]={china};
然后:
str[1] = str[1]+3;
然后就可以了。
第4个回答  2012-04-25
建议你参考这个看看:
http://zhidao.baidu.com/question/314980204.html
还算详细吧
第5个回答  2012-04-25
楼上正解
相似回答