[Keil-C51]在Keil C51中使用sizeof()的一点问题记录

原创 2015年07月11日 00:17:23
   问题描述:利用51核的单片机编程时,有时需要确切知道某个数值的字节数大小(如AD采集时采集到的AD值会存放在n位的数值),除了查找KeilC51的手册进行验证,另一种就是直接用sizeof()查看。
   sizeof():关于sizeof()的介绍网上有很多详细的资料,这是一个操作符,所以使用时不必添加头文件。可以对数值和类型进行操作,返回的值是size_t类型。size_t类型在C51编译器的stddef.h中如是定义:
#ifndef _SIZE_T
 #define _SIZE_T
 typedef unsigned int size_t;
#endif
   一点问题:首先使用sizeof()得到类型的字节长度,然后用printf通过串口将数据打印在我电脑上。
    使用
    printf("\n %d %d%d",sizeof(int),sizeof(short),sizeof(char));//打印结果为 514 256 0
   sizeof()返回的是size_t类型,这个就是unsigned int了,用%d格式化打印本应当是没问题的。
    于是,修改后:
  unsigned intj1,j2,j3;
  j1 = sizeof(int);
  j2 = sizeof(short);
  j3 = sizeof(char);
  printf("\n %d %d %d",j1,j2,j3);//此时打印结果为 22 1
   这里修改后,首先将sizeof(int),sizeof(short),sizeof(char)隐式转换成类型unsignedint了,然后再用%d格式化打印就可以。这个问题不知道是何原因。
版权声明:本文为博主原创文章,未经博主允许不得转载。

sizeof()计算数组结构体类大小长度

sizeof()是一个操作符,用来计算长度的,下面程序详细解释了数组,字符,结构体,类等的长度计算方法 // sizeof.cpp : Defines the entry point for the ...
  • zhangjikuan
  • zhangjikuan
  • 2015年06月27日 14:13
  • 3920

终于弄懂了keil4,51编程中如何将一个字符串数组复制到另一个字符串数组

C语言基础不行,如果有错请大牛指出,让小弟深入学习 uint8 array_0[]="abcefghijiklm   "; //此处不能写code 51中code代表只读ROM 不能用来赋值...
  • whileil
  • whileil
  • 2014年12月24日 13:51
  • 3509

C/C++基础::sizeof() 与 sizeof(string)

sizeof(string 对象) ≠ string 对象的.size()成员函数(.size()与.length()不作区别,返回 string 的字符个数) string 的实现在各库中可能有所不...
  • lanchunhui
  • lanchunhui
  • 2016年02月25日 16:05
  • 2025

keil数据类型占用的字节数

keil,数据类型,长度
  • iaiyan520
  • iaiyan520
  • 2017年01月14日 15:46
  • 730

如何用sizeof判断数组中有多少个元素

只需要用整个数组的sizeof去除以一个元素的sizeof即可求出数组中元素的个数,以数组名array为例,代码为 #define  Count (sizeof(array[0]))或者#define...
  • SuGuolin
  • SuGuolin
  • 2017年03月01日 23:27
  • 581

[Keil-C51]在Keil C51中使用sizeof()的一点问题记录

问题描述:利用51核的单片机编程时,有时需要确切知道某个数值的字节数大小(如AD采集时采集到的AD值会存放在n位的数值),除了查找Keil C51的手册进行验证,另一种就是直接用sizeof()查看。...
  • suxiang198
  • suxiang198
  • 2015年07月11日 00:17
  • 1009

keil 错误

|字号 订阅 C51编译器识别错类型有三种 1、致命错误:伪指令控制行有错,访问不存在的原文件或头文件等。 2、语法及语义错误:语法和语义错误都发生在原文件中。有...
  • ferlansue
  • ferlansue
  • 2011年12月12日 17:59
  • 18588

Keil C51使用详解V1.0

第一章Keil C51开发系统基本知识... 6 第一节 系统概述... 6 第二节 Keil C51单片机软件开发系统的整体结构... 6 第三节 Keil C51工具包的安装... 7  ...
  • dkr269944905
  • dkr269944905
  • 2017年05月27日 10:09
  • 687

Keil C51程序调试过程

Keil C51程序调试过程
  • chungle2011
  • chungle2011
  • 2014年12月10日 18:06
  • 606

keil所有错误

C51编译器识别错类型有三种 1、致命错误:伪指令控制行有错,访问不存在的原文件或头文件等。 2、语法及语义错误:语法和语义错误都发生在原文件中。有这类错误时,给出 提示但不产生目标...
  • bdhk6688
  • bdhk6688
  • 2013年03月06日 10:28
  • 1323
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[Keil-C51]在Keil C51中使用sizeof()的一点问题记录
举报原因:
原因补充:

(最多只允许输入30个字)