首页 > 编程 > C > 正文

short与int转换的小例子

2020-01-26 16:19:32
字体:
来源:转载
供稿:网友

复制代码 代码如下:

#include <stdio.h>

int main()
{
    short a=-1;
    unsigned int b=a;
    int c=a;

    printf("%x/n", b);
    printf("%d/n", c);

    a=1;
    b=a;
    c=a;

    printf("%x/n", b);
    printf("%d/n", c);


    return 0;
}


输出为:
ffffffff
-1
1
1
说明,把short型数据赋值给int或者unsigned int型数据时,如果short型数据是负的,则扩展的比特位全是1,;如果short型数据是正的,则扩展的比特位全是0.

复制代码 代码如下:

#include <stdio.h>

int main()
{
    unsigned short a=-1;
    unsigned int b=a;
    int c=a;

    printf("%x/n", b);
    printf("%d/n", c);

    a=1;
    b=a;
    c=a;

    printf("%x/n", b);
    printf("%d/n", c);


    return 0;
}


输出为:
ffff
65535
1
1
说明,把unsigned short型数据赋值给int或者unsigned int型数据时,则扩展的比特位全是0

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选