24小时热门版块排行榜    

查看: 861  |  回复: 12
当前主题已经存档。

zhanglei22

银虫 (小有名气)

[交流] 【求助】帮我看下vc++ 6.0

#include "stdafx.h"
#include "iostream.h"
#include "stdio.h"
#include "string.h"

class commu
{
        char* pname;
        char* pschool;

    public :
    void print(void)
    {
                cout<<"姓名:"<                 cout<<"单位:"<
        }

        void init(char*,char*);

        void freespace(void);
        void setname(char *name)
        {
                if(pname)  delete[] pname;
                pname=new char[strlen(name)+1];
                strcpy(pname,name);
        }
        void setschool(char *unit)
        {
                if(pschool)  delete[] pschool;
                pschool=new char[strlen(unit)+1];
                strcpy(pschool,unit);
        }

        char * getname(void)
    {
                return pname;
        }  

        char * getschool(void)
        {
                return pschool;
        }       
};

void commu::init(char*name,char*unit)
{
        pname=new char[strlen(name)+1];
        strcpy(pname,name);
        pschool=new char[strlen(unit)+1];
        strcpy(pschool,unit);
}

void commu::freespace(void)
{
    if(pname) delete[] pname;
        if(pschool) delete[] pschool;
}


int main(int argc, char * argv[])
{
  commu c1,c2;
  c1.init("张三","清华大学";
  c2.init("李四","北京大学";
  c1.print();
  c2.print();
  c1.setschool("南开大学";
  cout<   c1.freespace();
  c2.freespace();

  getchar();
  return 0;
}



运行不了啊,有些郁闷!
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

magic7004

金虫 (职业作家)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
nono2009(金币+2,VIP+0):鼓励交流,欢迎常来程序版 10-4 07:51
余泽成(金币+1,VIP+0):辛苦了,欢迎常来程序软件版! 10-4 10:16
晕~~,也不给个出错信息,我没有vc帮你调试啊。

ps:1.为什么要写init和freespace呢?建议init改成构造函数,freespace改成析构函数。
2. print没有检查pname和pschool是不是NULL,这样不安全哦。
3. getname和getschool也没检查pname和pschool是不是NULL,所以main里的函数调用commu::getname和getschool后,要检查返回值是不是NULL才行。
4.setname和setschool也没有检查输入参数是不是NULL。
5.delete[]应该是delete吧。
6.init函数没有先delete,就又分配了内存。如果多次调用init的话,会泄露内存。

[ Last edited by magic7004 on 2009-10-4 at 01:26 ]
流氓不可怕,可怕的是流氓有文化,有文化又BH的流氓无敌~~!
2楼2009-10-04 01:23:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yalefield

金虫 (文坛精英)

老汉一枚

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
nono2009(金币+1,VIP+0):谢谢专家!常来交流。 10-4 10:28
这个问题不是编程语言方面的,而是作者不懂得如何使用那个集成环境。
这就如同让一个5岁小孩驾驶F22战斗机。
3楼2009-10-04 10:22:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhanglei22

银虫 (小有名气)

没人帮忙 吗?  我自己顶一下!
4楼2009-10-05 14:31:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ms98

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1,VIP+0):支持讨论,欢迎常来程序软件版! 10-5 20:59
去掉  #include "stdafx.h"

stdafx.h是mfc框架所需的头文件,对于纯cpp文件来说,是不需要的,自然编译器也找不到。
建议下次贴出错误信息。
5楼2009-10-05 18:36:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhanglei22

银虫 (小有名气)

试过了 ,去掉也不行!
6楼2009-10-05 20:18:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ms98

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1,VIP+0):感谢热心解答,欢迎常来程序软件版! 10-5 22:35
我这边可以的...代码没有问题...
除非你犯了那种错误...例如说,选择的时候就没有正确告诉编译器你的是cpp文件...
贴错误信息先
7楼2009-10-05 21:51:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhanglei22

银虫 (小有名气)

--------------------Configuration: b - Win32 Debug--------------------
Compiling...
a.cpp
c:\program files\microsoft visual studio\myprojects\b\a.cpp(1) : fatal error C1083: Cannot open include file: 'stdafx.h': No such file or directory
执行 cl.exe 时出错.

b.exe - 1 error(s), 0 warning(s)


这就是出错信息! 是不是我的c++6.0有问题?
8楼2009-10-06 08:28:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ms98


小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+0,VIP+0):辛苦了,求助成功后我们会替楼主给予金币奖励! 10-6 16:43
汗!错误信息:无法打开'stdafx.h',就是我说的问题。
去掉  #include "stdafx.h"
就是说,删除 #include "stdafx.h"这句话,也就是你的代码中第一行

#include "stdafx.h"   ———这句删除
#include "iostream.h"
#include "stdio.h"
#include "string.h"
9楼2009-10-06 13:53:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhanglei22

银虫 (小有名气)

删了也不行啊

--Configuration: b - Win32 Debug--------------------
Compiling...
a.cpp
Linking...
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/b.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.

b.exe - 1 error(s), 0 warning(s)


删了后,就是这个错误了!
10楼2009-10-06 20:48:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zhanglei22 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见