标题:位运算出现[Warning] multi-character character constant
只看楼主
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
回复 7楼 七夜之华
你這樣寫肯定不行啦

授人以渔,不授人以鱼。
2015-12-01 09:34
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:2 
回复 10楼 七夜之华
有没有生硬在于你的界面怎么设计。

授人以渔,不授人以鱼。
2015-12-01 09:50
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
得分:4 
乱七八糟,用一个常量case,没有printf的输出格式!楼主估计已经头大了。

能编个毛线衣吗?
2015-12-01 09:51
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
回复 9楼 七夜之华
case 后面就不能跟双引号所代表的字符串

DO IT YOURSELF !
2015-12-01 09:54
七夜之华
Rank: 3Rank: 3
来 自:China
等 级:论坛游侠
威 望:5
帖 子:82
专家分:103
注 册:2014-9-7
得分:0 
回复 14楼 wp231957
嗯,是这样的。

#############################################
##########################################
因为不懂、才要学习、只有学习、才有进步。
2015-12-01 13:01
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:6 
如果你一定要使用case的话  可以尝试变通解决

比如 使用 小于号< 代表左位移  使用大于号> 代表右位移 等等  总之 case 后只能跟单字符

DO IT YOURSELF !
2015-12-01 13:12
七夜之华
Rank: 3Rank: 3
来 自:China
等 级:论坛游侠
威 望:5
帖 子:82
专家分:103
注 册:2014-9-7
得分:0 
回复 16楼 wp231957
/*

感谢各位,已经实现了这个子程序。*/

#include <stdio.h>
#include <math.h>

void Bit_operation()
{
     int a,b;
     int d = 0;
     int n;
     printf("  1:与运算     2:或运算     3:按位与或   4:求反操作  \n");
     printf("  5:左移操作   6:右移操作   7:Exit\n");
     printf("请输入你的选择");
     scanf("%d",&n);
     printf("\n");
     switch(n){
                case 1:
                     printf("请输入你要运算的第一个数的值:");
                     scanf("%d",&a);
                     printf("\n");
                     printf("请输入你要运算的第二个数的值:");
                     scanf("%d",&b);
                     d = a&b;      
                     printf("运算结果为:%d\n",d);break;
                case 2:
                     printf("请输入你要运算的第一个数的值:");
                     scanf("%d",&a);
                     printf("\n");
                     printf("请输入你要运算的第二个数的值:");
                     scanf("%d",&b);
                     d = a|b;
                     printf("运算结果为:%d\n",d);break;  
                case 3:
                     printf("请输入你要运算的第一个数的值:");
                     scanf("%d",&a);
                     printf("\n");
                     printf("请输入你要运算的第二个数的值:");
                     scanf("%d",&b);
                     d = a^b;
                     printf("运算结果为:%d\n",d);break;
                case 4:
                     printf("请输入你要运算的数值:");
                     scanf("%d",&a);
                     printf("\n");
                     d = ~a;
                     printf("运算结果为:%d\n",d);break;
                case 5:
                     printf("请输入你要运算的数值:");
                     scanf("%d",&a);
                     printf("请确认你要左移的位数:");
                     scanf("%d",&n);
                     d = a<<n;
                     printf("运算结果为:%d\n",d);break;
                case 6:
                     printf("请输入你要运算的数值:");
                     scanf("%d",&a);
                     printf("请确认你要左移的位数:");
                     scanf("%d",&n);
                     d = a>>n;
                     printf("运算结果为:%d\n",d);break;      
                default:
                     printf("您的输入有误,请重新输入!");
                }
}
main()
{
      char c;
      int a,b;
      int n;
      printf("欢迎来到运算小世界!!!\n");
      printf("\n");
      Bit_operation(a,b,n);
      system("pause");
      
}




#############################################
##########################################
因为不懂、才要学习、只有学习、才有进步。
2015-12-01 14:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-459741-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.451006 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved