我必须在C中添加一个数字.我必须在没有像'+','++'等算术运算符的情况下这样做.
我写了以下代码行.
int a = 1234;
int b = 1;
printf("%d", a ^ b);
Run Code Online (Sandbox Code Playgroud)
这工作正常,直到达到整数限制,即,对于32位,它是4294967295.但我在许多其他网站中看到,执行相同的两个数字的AND,然后是XOR和左移.
请告知我的方法是否正确,因为我是C的新手.
在这里如果我使用delete或delete[]输出仍然是70.我能知道为什么吗?
#include<iostream>
using namespace std;
int main()
{
int* c = new int[100];
for(int i=0; i<98; i++)
{
c[i] = i;
}
cout<<c[70]<<endl;
delete[] c;
or
delete c;
cout<<c[70]<<endl; //outputs 70 even after delete[] or delete
return 0;
}
Run Code Online (Sandbox Code Playgroud)