tc++中当我去掉类型转换时,为何报int*不能赋给time*指针的error呢

Robincen 2003-10-21 12:15:25
tc++中:(已有相关头文件)
1 struct time tm,*tr;
2 tr=(struct time*) new time;
为什么第二句就是编译不过呢?并提示缺少 ;
而且当我去掉2中的类型转换时,也报int*不能赋给time*指针,但按tc++语法的话,应该是不报错的啊!!
请指教:

有朋友说要写成new struct time
而当我写成 new struct time的时候,它反而提示time 没定义!
无语了~~
另外tc++中,必须写成struct "name"吗 ?
...全文
70 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
arfi 2003-10-22
  • 打赏
  • 举报
回复
你写成下面的形式可以编译过去:
#include <dos.h>
#include <stdlib.h>

main()
{
struct time *tr;

tr = new struct time;
}
这是由于在头文件stdlib.h中有个time()函数造成的,做个实验:

struct stu
{
char name[20];
}

long stu(){return 0;}

main()
{
stu stu1;
}
这段代码就会报错,而将main中的stu stu1;改写成struct stu stu1;就好了。
arfi 2003-10-21
  • 打赏
  • 举报
回复
相关头文件正确吗?其定义在<dos.h>中
写成tr = new time;就可以了
darcymei 2003-10-21
  • 打赏
  • 举报
回复
代码
Robincen 2003-10-21
  • 打赏
  • 举报
回复
请求帮助~~~~~
Robincen 2003-10-21
  • 打赏
  • 举报
回复
#include<dos.h>
#include<stdlib.h>

main(){
struct time *tr;
tr=new time ;
}

为何加了stdlib.h 就编译不过了?
langzi8818 2003-10-21
  • 打赏
  • 举报
回复
UP

64,282

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧