标题:关于结构体的小白问题
只看楼主
lala119000
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2015-3-2
结帖率:100%
 问题点数:0 回复次数:1 
关于结构体的小白问题
#include <stdio.h>
#include <stdlib.h>
struct a{
    int a;
    char b;
    char c[];
};
int main (void)
{
   
    struct a *p=(struct a *)malloc(sizeof(struct a)+24*sizeof(char));
p->a=1;
p->a='c';
p->c="nihao";
    printf("%s",p->c);
    free(p);
   
}
请问大家,用指针给字符串赋值怎么赋啊,p->c="nihao";不好使,编译器提示error: incompatible types in assignment of `const char[6]' to `char[0u]',啥意思呢。到底用指针给结构体中的伸缩性数组赋值,该怎么赋值呢?
搜索更多相关主题的帖子: 结构体 struct char 指针 赋值 
2018-10-22 14:42
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
和“结构体”无关
#include <string.h>
p->c="nihao"; 改为 strcpy( p->c, "nihao" );
2018-10-22 15:07



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-490595-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.137746 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved