小编MCG*_*MCG的帖子

负数在内存中存储为2的补码,CPU如何知道它是负数还是正数?

-1可以用4位二进制表示为(2的补码)1111

图15也表示为1111.

那么,当CPU从内存中获取值时,CPU如何区分15和-1?

binary unsigned sign numeric microprocessors

21
推荐指数
3
解决办法
1万
查看次数

为什么整个结构无法在C中进行比较,但它可以被复制?

为什么整个结构无法在C中进行比较但是可以复制?换句话说,为什么以下程序中的比较不起作用?它不打印字符串.

#include <stdio.h>
#include <string.h>

int main(void)
{

    struct emp
    {
        char n[20];
        int age;
        };

    struct emp e1={"David",23};
    struct emp e2=e1;
    if(e2 == e1)
    {
        printf("The structures are equal");
    }
    return(0);
}
Run Code Online (Sandbox Code Playgroud)

c

11
推荐指数
2
解决办法
3175
查看次数

为什么MIPS Architecture程序空间分为4个区域?

MIPS arcitecture程序空间有kuseg,kseg0,kseg1和kseg2内存段.这种分裂背后有历史和逻辑上的原因吗?

mips

4
推荐指数
1
解决办法
4015
查看次数

多维数组的大小

我试图获得多维数组的大小,并在C中编写代码,如下所示.

#include <stdio.h>

char b[3][4];

int main(void){
    printf("Size of array b[3]=%d\n", sizeof(b[3]));  
    printf("Size of array b[2]=%d\n", sizeof(b[2]));
    printf("Size of array b[5]=%d\n", sizeof(b[5]));

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在以上三个打印语句中,我的大小等于4.有人可以解释sizeof多维数组的情况如何工作吗?为什么第三次打印的输出相同?

c arrays sizeof

4
推荐指数
1
解决办法
1583
查看次数

寄存器和易失性有什么区别?什么时候用用哪一种?易失性寄存器变量是什么意思?

寄存器和易失性有什么区别?什么时候使用哪一个?易失性寄存器变量的含义是什么?

register int a; volatile int a;

c volatile storage-class-specifier

0
推荐指数
1
解决办法
5417
查看次数