小编pun*_*eet的帖子

在C中向数字添加1

我必须在C中添加一个数字.我必须在没有像'+','++'等算术运算符的情况下这样做.

我写了以下代码行.

int a = 1234;
int b = 1;
printf("%d", a ^ b);
Run Code Online (Sandbox Code Playgroud)

这工作正常,直到达到整数限制,即,对于32位,它是4294967295.但我在许多其他网站中看到,执行相同的两个数字的AND,然后是XOR和左移.

请告知我的方法是否正确,因为我是C的新手.

c bitwise-operators integer-arithmetic

-5
推荐指数
1
解决办法
3606
查看次数

删除[]和删除似乎行为相似

在这里如果我使用deletedelete[]输出仍然是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)

c++

-5
推荐指数
1
解决办法
90
查看次数

标签 统计

bitwise-operators ×1

c ×1

c++ ×1

integer-arithmetic ×1