| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2001 人关注过本帖
标题:整整一个下午都挣扎在这个程序的编写,可出现的错误让我作死的节奏,望拯救 ...
取消只看楼主 加入收藏
寒冷枫dl
Rank: 2
等 级:论坛游民
帖 子:23
专家分:18
注 册:2013-11-2
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
整整一个下午都挣扎在这个程序的编写,可出现的错误让我作死的节奏,望拯救于苦海!
#include <iostream>
#include <string>
using namespace std;
int length=0;
struct  TelephoneMessager  //手机联系人信息  
{      
    string name;    // 姓名
    string number;  // 电话         
}tb[100];    // 外部结构体数组tb,可以
void showMessager(TelephoneMessager &t)
{
    int i;
    for(i=0;i<=length-1;i++)
    {
        if(length==0)
            cout<<"号码薄为空白"<<endl;
        else
  cout<<tb[i].name<<" "<<tb[i].number<<endl;
}
    int main()
    {
   
      int n;
      cout<<"欢迎进入号码薄请选择你要进行的操作:"<<endl;
      cout<<"1.显示联系人;2.添加联系人;3.删除联系人;4.查询联系人;5.结束操作"<<endl;
      cin>>n;
      if(n==1)
     {
         showMessager(tb);
         jiemian;
     }

     if(n==5)
     {     cout<<"程序结束,再见"<<endl;
         cout<<"请按任意键继续"<<endl;
     }
     return 0;
}

错误的样子长这样,我就不明白了,为什么main会错的。主要的程序功能是要显示联系人,添加联系人,查询联系人等可我做到第一步就卡住动弹不得。   

    Compiling...
luoulo.cpp
C:\Users\asus\Documents\luoluo\luoulo.cpp(21) : error C2601: 'main' : local function definitions are illegal
C:\Users\asus\Documents\luoluo\luoulo.cpp(45) : fatal error C1004: unexpected end of file found
执行 cl.exe 时出错.

luoulo.obj - 1 error(s), 0 warning(s)
搜索更多相关主题的帖子: include 联系人 number 结构体 
2014-03-28 16:53
寒冷枫dl
Rank: 2
等 级:论坛游民
帖 子:23
专家分:18
注 册:2013-11-2
收藏
得分:0 
回复 2楼 天使梦魔
我把你给我的程序用Vc6运行时,发现有个头文件我的库里找不到,所以没有成功,但看了你细心帮我找的错,又去思考了下,用指针传值,但是不是我天生太笨了,总是不行。对于你的帮助真心感到谢谢,谢谢你的耐心指导和交流。如果觉得太麻烦没有时间看的话,我只好去看看有没有其它的办法了,真的是学艺不精,刚开始学问题不断。
#include <iostream>
#include <string>
using namespace std;
#define length 0;//想用它来记录实际的联系人个数,并且控制循环语句的次数
struct  TelephoneMessager  //手机联系人信息  
{      
    string name;    // 姓名
    string number;  // 电话         
}tb[100];    // 外部结构体数组tb,可以可以存放100条 联系人信息

void showMessager(TelephoneMessager *p)
{
    int i;
    for(i=0;i<=length-1;i++)//这里不停的出错
    {
        if(length==0)
            cout<<"号码薄为空白"<<endl;//在没有输入联系人时用它来显示号码为空白,因为我不知道怎么去判断tb如何为空的
        else
         cout<<p[i].name<<" "<<p[i].number<<endl;
    }

}
    int main()
    {
   
      int n;
      cout<<"欢迎进入号码薄请选择你要进行的操作:"<<endl;
      cout<<"1.显示联系人;2.添加联系人;3.删除联系人;4.查询联系人;5.结束操作"<<endl;
      cin>>n;
      TelephoneMessager *p[100]=&tb;//定义P指向TelephoneMessager类型的指针并指向tb数组,不知道有没有错?
      if(n==1)
     {
         showMessager(&tb);//这句传值时对不对?
      }
      return 0;
}
      
      
        // jiemian;//因为程序在执行上面1,2,3,4,5后都需要回到一个界面(jiiemian),来进行重新的选择操作,所以我就定义了一个函数来回到这个界面操作。
     /*我的想法是:
      void jiemian()
      { int m;
      cout<<"1.显示联系人;2.添加联系人;3.删除联系人;4.查询联系人;5.结束操作"<<endl;
      cin>>m;
      if(m==1)
      {
      showMessager();调用函数来显示联系人
      jiemian();回到选项界面
      }
          if(m==2)
          {
          addMessager(tb);添加联系人
          jiemian();
          }
           if(n==5)
           {  cout<<"程序结束,再见"<<endl;
         cout<<"请按任意键继续"<<endl;这里我想让操作者按任意键继续,不按就不继续执行程序怎么破。
          }
        return 0;
        }*/
2014-03-28 19:21
寒冷枫dl
Rank: 2
等 级:论坛游民
帖 子:23
专家分:18
注 册:2013-11-2
收藏
得分:0 
哈哈,这下我是看懂了。好佩服你的//后的解释, tb.num=0;//不初始化死全家,你这个又不是类,没有构造函数
    while(1)//死循环,用来不停的循环,直到菊花开裂,经典啊,好懂。坚持的学下去,c++.给你点32个赞
2014-03-28 20:32
快速回复:整整一个下午都挣扎在这个程序的编写,可出现的错误让我作死的节奏,望 ...
数据加载中...
 
   



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

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