【发布时间】:2011-10-13 19:44:00
【问题描述】:
请阅读我的代码,并帮助我调试它。因为Dev-C++发现很多错误....
#include<iostream.h>
#include<conio.h>
using namespace std;
struct iWorker{
double salary;
}
double calSalary(iWorker worker){
double money = worker.salary;
return money;
}
int main(){
iWorker worker;
cout << "Enter salary: ";
cin >> worker.salary;
double salary = calSalary(worker, 0);
cout << salary;
getch();
return 0;
}
和错误:
9: error: new types may not be defined in a return type
9: error: two or more data types in declaration of `calSalary'
In function `iWorker calSalary(iWorker)':
11: error: conversion from `double' to non-scalar type `iWorker' requested
In function `int main()':
9: error: too many arguments to function `iWorker calSalary(iWorker)'
20: error: at this point in file
20: error: cannot convert `iWorker' to `double' in initialization
谢谢...
【问题讨论】:
-
<iostream.h>早于 C++ (stackoverflow.com/questions/214230/…) 的标准化 - 1998 年!任何新代码绝对不应该使用它,任何使用它的书籍都可怕过时了! -
calSalary只取一个参数。在调用函数时,为什么要向函数传递一个额外的参数 0?是错字吗? -
@Mahesh,是的,我想检查函数是如何工作的。 (我删除了它)
-
请尽快摆脱 Dev-C++。阅读Dev-C++ tag info。
-
@R.MartinhoFernandes,好的,我已经在我的 Windows 上安装了 Dev,在 linux 中我有 qt。但我也应该将它安装在 Windows 上。
标签: c++