标题:求助一个结构体指针问题,代码只有五行
取消只看楼主
jdvschor
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-11-3
结帖率:66.67%
已结贴  问题点数:15 回复次数:1 
求助一个结构体指针问题,代码只有五行
#include
#include
#include

//#pragma pack(1)

typedef struct InterTemp
{   
    char c[20];
    unsigned int  a;
    unsigned char b;
   

}st_temp,*st_ttemp;


typedef struct ST_aTemp
{
    char c[20];
    unsigned int  a;   
    ttemp atemp;


}st_natemp,*st_ptr_atemp;

int main()
{


    st_ttemp nptr;
    st_ptr_atemp st_ptr_a;
    st_natemp st_natemp;

    char buff[20]="hello world!!";
    char t_buff[20] = "above the well";
 
    // temp * atemp = (temp*)malloc(sizeof(1024));

       strcpy(st_natemp.c,buff);
       strcpy(st_natemp.atemp->c,t_buff);
   
    以下省略一万行
   
    return  0;
}


问题: 如何给一个指向结构体数组的指针赋值,我用strcpy(st_natemp.atemp->c,t_buff); 编译时不报错,调试执行时会提示内存溢出,还有如果我把两个结构体中的char c[20]都改成 unsigned char c[20] ,同时 吧 main 函数中的 char c[20] 也改成 unsigned char c[20]  编译时就会报错 ,提示 cannot convert
'unsigned char [20]' to 'char * '  不理解 我都改成 unsigned char 了 为何还有 char * ,希望各位大大 帮忙找出原因,能帮我改下更好
      
搜索更多相关主题的帖子: include 结构体 hello world 五行 
2011-11-03 10:01
jdvschor
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-11-3
得分:0 
恩 ,多谢hero 的提醒 ,有点犯傻了 ,同时也感谢Define的解答 ,thank you
2011-11-03 14:36



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




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

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