如何将char a [10]赋值为空

chara[10]我在结构体中定义的我用NULL赋值时报errorC2440:“=”:无法从“int”转换为“char[10]“C语言的... char a [10]我在结构体中定义的我用NULL赋值时报 error C2440: “=”: 无法从“int”转换为“char [10]“C语言的 展开
 我来答
zqh2173494
2010-04-23 · 超过23用户采纳过TA的回答
知道答主
回答量:48
采纳率:0%
帮助的人:65.5万
展开全部
NULL的定义是0,所以是int的,可以赋值给指针
这样就可以了char a[10]={'\0'};就是把第一个字符设为空
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5803c9a
推荐于2017-12-16 · TA获得超过2162个赞
知道小有建树答主
回答量:891
采纳率:0%
帮助的人:1228万
展开全部
楼上几位的写法挺对,但不够简单
其它这个问题相当简单

char a[10];
memset(a, '\0', sizeof(a));

就OK了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
evil0angel
2010-04-23 · TA获得超过112个赞
知道答主
回答量:97
采纳率:0%
帮助的人:65.1万
展开全部
如果一定要为空的话
char a[10];
这样就可以了,它里面现在没有任何元素。
不需要对他做任何动作。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
刀禧朴臻
2020-12-01 · TA获得超过1144个赞
知道小有建树答主
回答量:1422
采纳率:100%
帮助的人:6.3万
展开全部
如你所说char
a=0xef,这是错误的,因为char型取值范围为-127
-
128,所以最大只能是0x80.
十六进制和十进制在内存中都是以二进制的形式存储的,所以,只需要定义一个int型变量,直接将十六进制的值赋给这个变量即可。打印输出的时候用%x,就可打印出这个16进制数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d092acd81
2010-04-23 · 超过16用户采纳过TA的回答
知道答主
回答量:47
采纳率:0%
帮助的人:45.5万
展开全部
试试这个char[0]='\0'. 只要第一个值是空,整个array就是空的
回evil,
但是如果没有赋值,print出来里面是垃圾吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式