C:从类型char分配给类型char[]时,类型不兼容* struct name{ 字符名[256]; 结构名称*下一步; }; 无效显示(结构名称*头){ 结构名称*ende=头部; int i=1; printf(“\n名称列表:\n”); while(ende!=NULL){ printf((%d)%s),i,ende->name); 结束=结束->下一步; i++; } } void bubblesort(结构名称*头){ 结构名称*block,*temp; 字符更改[256]=“”; for(block=head;block->next!=NULL;block=block->next){ 对于(临时=头部;临时->下一步!=NULL;临时=临时->下一步){ 如果(临时->下一步==NULL) 打破 如果(临时->下一步->名称[0]名称[0]){ char*element=temp->next->name; printf(“元素:%s”,元素); 临时->下一步->名称=临时->名称; temp->name=元素; } } } }
我不知道为什么当我想在temp->next->name中从temp->name写入时会出现编译器错误!有人能解释我为什么会出现以下错误:“当从char*分配给char[256]类型时,类型不兼容”,以及我如何解决我的问题吗?C:从类型char分配给类型char[]时,类型不兼容* struct name{ 字符名[256]; 结构名称*下一步; }; 无效显示(结构名称*头){ 结构名称*ende=头部; int i=1; printf(“\n名称列表:\n”); while(ende!=NULL){ printf((%d)%s),i,ende->name); 结束=结束->下一步; i++; } } void bubblesort(结构名称*头){ 结构名称*block,*temp; 字符更改[256]=“”; for(block=head;block->next!=NULL;block=block->next){ 对于(临时=头部;临时->下一步!=NULL;临时=临时->下一步){ 如果(临时->下一步==NULL) 打破 如果(临时->下一步->名称[0]名称[0]){ char*element=temp->next->name; printf(“元素:%s”,元素); 临时->下一步->名称=临时->名称; temp->name=元素; } } } },c,C,我不知道为什么当我想在temp->next->name中从temp->name写入时会出现编译器错误!有人能解释我为什么会出现以下错误:“当从char*分配给char[256]类型时,类型不兼容”,以及我如何解决我的问题吗? 我是C的新手。您不能分配给数组,只能根据定义对其进行初始化 但是,您可以复制到阵列: struct name { char name[256]; struct name* next; }; void Display(struct name *head) {
我是C的新手。您不能分配给数组,只能根据定义对其进行初始化 但是,您可以复制到阵列:
struct name {
char name[256];
struct name* next;
};
void Display(struct name *head) {
struct name *ende = head;
int i = 1;
printf("\nList of names:\n");
while(ende != NULL) {
printf("(%d) %s", i, ende->name);
ende = ende->next;
i++;
}
}
void bubblesort(struct name *head) {
struct name *block,*temp;
char change[256] = "";
for(block = head; block->next != NULL; block = block->next) {
for(temp = head; temp->next != NULL; temp = temp->next) {
if(temp->next == NULL)
break;
if(temp->next->name[0] < temp->name[0]) {
char *element = temp->next->name;
printf("ELEMENT: %s", element);
temp->next->name = temp->name;
temp->name = element;
}
}
}
}
阅读。您不能分配给数组,只能根据定义对其进行初始化 但是,您可以复制到阵列:
struct name {
char name[256];
struct name* next;
};
void Display(struct name *head) {
struct name *ende = head;
int i = 1;
printf("\nList of names:\n");
while(ende != NULL) {
printf("(%d) %s", i, ende->name);
ende = ende->next;
i++;
}
}
void bubblesort(struct name *head) {
struct name *block,*temp;
char change[256] = "";
for(block = head; block->next != NULL; block = block->next) {
for(temp = head; temp->next != NULL; temp = temp->next) {
if(temp->next == NULL)
break;
if(temp->next->name[0] < temp->name[0]) {
char *element = temp->next->name;
printf("ELEMENT: %s", element);
temp->next->name = temp->name;
temp->name = element;
}
}
}
}
阅读。您不能分配给数组,只能根据定义对其进行初始化 但是,您可以复制到阵列:
struct name {
char name[256];
struct name* next;
};
void Display(struct name *head) {
struct name *ende = head;
int i = 1;
printf("\nList of names:\n");
while(ende != NULL) {
printf("(%d) %s", i, ende->name);
ende = ende->next;
i++;
}
}
void bubblesort(struct name *head) {
struct name *block,*temp;
char change[256] = "";
for(block = head; block->next != NULL; block = block->next) {
for(temp = head; temp->next != NULL; temp = temp->next) {
if(temp->next == NULL)
break;
if(temp->next->name[0] < temp->name[0]) {
char *element = temp->next->name;
printf("ELEMENT: %s", element);
temp->next->name = temp->name;
temp->name = element;
}
}
}
}
阅读。您不能分配给数组,只能根据定义对其进行初始化 但是,您可以复制到阵列:
struct name {
char name[256];
struct name* next;
};
void Display(struct name *head) {
struct name *ende = head;
int i = 1;
printf("\nList of names:\n");
while(ende != NULL) {
printf("(%d) %s", i, ende->name);
ende = ende->next;
i++;
}
}
void bubblesort(struct name *head) {
struct name *block,*temp;
char change[256] = "";
for(block = head; block->next != NULL; block = block->next) {
for(temp = head; temp->next != NULL; temp = temp->next) {
if(temp->next == NULL)
break;
if(temp->next->name[0] < temp->name[0]) {
char *element = temp->next->name;
printf("ELEMENT: %s", element);
temp->next->name = temp->name;
temp->name = element;
}
}
}
}
了解