找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 9948|回复: 0
打印 上一主题 下一主题
收起左侧

C语言无符号变量赋值负数-Uint及Ulong 赋值后还是负数,Ushort类型和Uchar以下会...

[复制链接]
跳转到指定楼层
楼主
ID:71477 发表于 2015-1-1 18:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
C语言无符号变量赋值负数 unsigned  char   ,   unsigned  short    unsigned  int    unsigned  long  

Uint及Ulong 赋值后还是负数,Ushort类型和Uchar以下会把负数补码变正数存储
另外 pfintf()  打印输出Uint  变量的内容 ,格式不同,会强制转换后输出 。 %d  会把Uint 转换成int 输出, %u   会输出为无符号 。

cout 打印输出 都是输出Uint
/**********************实验1****************************************/
#include "iostream.h"
#include "stdio.h"void  main()
{


// unsigned    short   WuFuHao ;

unsigned    long   WuFuHao ;
WuFuHao = (-50);

if(WuFuHao == (-50))
{
  //cout<<"判断为真,是-50"<<endl;
  //cout << WuFuHao <<endl;

  printf("if判断为真,是-50\n" );
  printf("PRINTF打印结果是:%d\n" , WuFuHao);
}

}

打印输出结果 : if判断是正确的

if判断为真,是-50
PRINTF打印结果是:-50


             Press any key to continue
/**********************实验2****************************************/
#include "iostream.h"
#include "stdio.h"
void main()
{

unsigned short WuFuHao ;
//unsigned long WuFuHao ;
WuFuHao = (-50);

if(WuFuHao == (-50))
{
//cout<<"判断为真,是-50"<<endl;
//cout << WuFuHao <<endl;

printf("if判断为真,是-50\n" );
printf("PRINTF打印结果是:%d\n" , WuFuHao);
}
}

打印输出结果 : if语句  假

没有输出
Press any key to continue


/**********************实验3****************************************/
#include "iostream.h"
#include "stdio.h"
void  main()
{

//unsigned    short   WuFuHao;
unsigned    int   WuFuHao ;
WuFuHao = (-10);

  cout << WuFuHao <<endl;
  printf("PRINTF打印结果是:%d\n" , WuFuHao);

}

输出结果为:

4294967286
PRINTF打印结果是:-10
Press any key to continue



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表