C语言中如果没有对一个uchar的变量赋初值,那么这个变量在程序中刚开始的值是多少?是任意的么?

如题所述

这个和编译系统有关系。一般基于单片机的编译系统,未赋初值的变量是零。而对于其他编译系统可能是随机的。要了解你的编译系统特性,建议对变量赋初值,防止出现这类问题。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-02-26
随机数,就是这个变量空间上一次使用时的值。当然不是任意的= =
只能是 uchar 的值域
第2个回答  2011-02-26
随机的吧,输出看看不就知道
第3个回答  2011-02-26
嗯,是不是任意的!可能与软件有关!!

c语言中 int char uint uchar 的取值范围都是多少?
c语言中没有uint、uchar这两个关键字,uint、uchar是为了阅读书写方便用户使用宏自定义的,分别代表无符号整型、无符号字符型:define uchar unsigned char define uint unsigned int 其中:uint数据类型占两字节, 取值范围是-32768~32767。uchar数据类型占一字节, 取值范围是_128~127。C语言是一门通用...

C语言uchar取值范围的问题
在C语言的有关运算过程中,数据是会进行一些自动类型转换的,比如你所说的 uchar 两个类型会自动提升成 int 类型,因此你没必要去进行强制类型转换。因此,a+b的结果肯定会大于255的,你可以输出这两个数的和试试。

c语言中uchar问题,坐等!!!
你的描述错了,uchar是unsigned char,它能接受8位的2进制数据,它与下面这两句话是等效的:1、任意2位十六进制数据(即任意小于0XFF的十六进制正数),例如0X08,0XF2,0XEA等,0X不算在位数之内,只是16进制数据的前缀,所以这几个例子都是2位的16进制数。2、任意小于255的十进制正数(不带前缀的...

有关于单片机C语言,小问题,下面这段程序有个num参数,前面没有赋值,后面...
一般是的,但是不同的编译器可能会有不一样的情况,建议还是要将变量初始化一下,比较保险,即:uchar num=0;

在C语言中,变量的初始化都是在编译阶段完成的.为什么错?
char型相加,其实是将他的整形值相加,结果是一个整数,除非(char)强转。在局部范围,局部变量是在栈中生存,而全局变量在静态存取,所以是不同的变量,怎么会相等。关于char还有一个特殊的语言就是char *,它在C\/C++中有专门的语义,既不同于signed char *,也不同于unsigned char *,专门用于指...

51单片机“uchar”是什么意思?
在C语言中,一个存储单元根据变量类型的声明,其二进制位被分为符号位和数据位。对于unsigned char类型,它占据1个字节,也就是8位,所有位都是数值位,无符号。因此,其数值范围是0(二进制的0000 0000)到255(二进制的1111 1111),在十进制中表示为0到255。无符号字符型在实际应用中,常常用于...

单片机(C语言编程)中:char 和uchar有什么区别?
全称为signed char 一般缩写为char 范围是-128~127 uchar 在C语言中不存在,会出现语法错误。unsigned char 是无符号型变量 范围是 0~255 但大家为了书写简单,大家都做如下定义:这时候Uchar或uchar就可以当无符号型字符变量使用了 typedef unsigned char Uchar;typedef unsigned char uchar;...

c语言中uint是什么意思
一个结构体变量的总长度大于等于各成员长度之和。而在“联合”中,各成员共享一段内存空间,一个联合变量的长度等于各成员中最长的长度。共享不是指把多个成员同时装入一个联合变量内,而是指该联合变量可被赋予任一成员值,但每次只能赋一种值,赋入新值则冲去旧值。

单片机C语言中的uint p=0 什么意思?
单片机C语言中的uint p=0 意思是无符号变量p赋值0.

51单片机“uchar”是什么意思?
“uchar”是“unsigned char”的缩写,表示无符号字符型变量。在C语言中,char类型用于存储字符数据,可以是带符号的或无符号的。对于无符号字符型,其取值范围从0到255。2. 在51单片机中的应用:51单片机是一种常用的嵌入式系统微控制器,其内部存储空间有限。在编程时,需要使用各种数据类型来管理内存...

相似回答