首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

通过指针间接地修改结构体结构成员内容,该怎么处理

2012-03-13 
通过指针间接地修改结构体结构成员内容在书上看到一个例子,实验一下调试不通,不清除错到哪里了?刚刚学习C+

通过指针间接地修改结构体结构成员内容
在书上看到一个例子,实验一下调试不通,不清除错到哪里了?刚刚学习C++(没有C基础),请不要见笑。
#include <iostream>
using   namespace   std;
struct   couple
{
              char   man[];
              char   woman[];
};
void   break_up(struct   couple   *ptr);
int   main()
{
        struct   couple   Camastra={ "John ", "Sara "};
        struct   couple   *ptr;
        ptr=&Camastra;
        cout < < "Before   break_up,Camstra   couple   was:\n ";
        cout < <Camastra.man < < " " < <Camastra.woman < < "\n ";
        break_up(ptr);
        cout < < "After   break_up,Camstra   couple   is:\n ";
        cout < <Camastra.man < < " " < <Camastra.woman < < "\n ";
        system( "pause ");
}  
void   break_up(struct   couple   *ptr)
{
          ptr-> woman= 'C ';
}


  char   man[];这样的声明也不是很理解。


[解决办法]
太复杂的代码.

用c++ primer学习c++吧.

ptr-> woman[0]= 'C ';


[解决办法]
换书,C++ Primer
[解决办法]
char man[];
编译器不能确定数组的大小.

void break_up(struct couple *ptr)
{
ptr-> woman= 'C ';//这里不对,因为woman是数组,所以应该是字符串类型的
}

热点排行