从类型 int 分配给类型 char[] 时的类型不兼容 [英] Incompatible types when assigning to type char[] from type int
本文介绍了从类型 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屋!
查看全文