从类型 int 分配给类型 char[] 时的类型不兼容 [英] Incompatible types when assigning to type char[] from type int

查看:44
本文介绍了从类型 int 分配给类型 char[] 时的类型不兼容的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

假设我有这个结构

 struct person {
   char last_name [10];
 };
typedef struct person Person;

我用一个特定的名字填充这个结构对象

And I fill this struct-object with a certain name

Person p;
Person *ptrPerson = &p;
strcpy(ptrPerson->last_name, "Johnson"); 

然后我把这个名字放在一个 Person 类型的数组中......放在第一个位置

And then I put this name in an array of type Person ... put in the first position

Person queue[10];
queue[0] = *ptrPerson;

到目前为止一切顺利.但是在那之后我如何取消 arraypostion - 或者至少在那里放一个字符-":

So far so good. But how do I nullify the arraypostion after that - or at least put a character "-" there instead:

queue[0].last_name = "-";

我收到以下编译错误:

错误:从类型int"分配给类型char[10]"时类型不兼容

推荐答案

queue[0].last_name = "-"; 正在尝试分配由 "-"<返回的地址/代码>.

queue[0].last_name = "-"; is trying to assign the address returned by "-".

使用strcpy(queue[0].last_name,"-");

这篇关于从类型 int 分配给类型 char[] 时的类型不兼容的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆