下面的代码在C中正常工作,但是当我尝试用c ++编写它时,程序不起作用.请解释.
C代码:
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a = 33,b = 7;
printf("%d\n",a&b);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
C++代码:
#include<iostream>
using namespace std;
int main()
{
int a = 33,b = 7;
cout << 33&7 << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
Mys*_*ial 32
观察您的运营商优先级:
cout << (33 & 7) << endl;
Run Code Online (Sandbox Code Playgroud)
&优先级低于<<.所以你需要使用().
有关C和C++中运算符优先级的完整列表:
http://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B#Operator_precedence
| 归档时间: |
|
| 查看次数: |
645 次 |
| 最近记录: |