warning C4013: 'createAccNumber' undefined; assuming extern returning int这又是什么错误?
voidopenAccount()//开户{intmaxAccount,rs;intaccNumber;//账号characcName[9];//户名characcPWD...
void openAccount() //开户
{
int maxAccount,rs;
int accNumber; // 账号
char accName[9]; // 户名
char accPWD[7]; // 密码
double cash; // 存入金额
accNumber=0;
memset(accName, 0, sizeof(accName));
memset(accPWD, 0, sizeof(accPWD));
cash=0;
accNumber=createAccNumber();
getaccName ( accName ) ;
getaccPWD ( accPWD ) ;
cash= getcash (0);
maxAccount++; //帐户的数量
rs[maxAccount].accNumber =accNumber;
strcpy(rs[maxAccount].accName ,accName);
strcpy(rs[maxAccount].accPWD ,accPWD);
rs[maxAccount].balance =cash;
strcpy(rs[maxAccount].flag ,"0");
if(writeData())
{
printf("写文件出错!");
return'
}
dispAnAccount(maxAccount);
printf("开户成功,按任意键返回。。。\n");
getchar();
} 展开
{
int maxAccount,rs;
int accNumber; // 账号
char accName[9]; // 户名
char accPWD[7]; // 密码
double cash; // 存入金额
accNumber=0;
memset(accName, 0, sizeof(accName));
memset(accPWD, 0, sizeof(accPWD));
cash=0;
accNumber=createAccNumber();
getaccName ( accName ) ;
getaccPWD ( accPWD ) ;
cash= getcash (0);
maxAccount++; //帐户的数量
rs[maxAccount].accNumber =accNumber;
strcpy(rs[maxAccount].accName ,accName);
strcpy(rs[maxAccount].accPWD ,accPWD);
rs[maxAccount].balance =cash;
strcpy(rs[maxAccount].flag ,"0");
if(writeData())
{
printf("写文件出错!");
return'
}
dispAnAccount(maxAccount);
printf("开户成功,按任意键返回。。。\n");
getchar();
} 展开
展开全部
这个问题跟你刚才的问题一样,都是:函数在调用之前,没有“声明”或“定义”。
编译器编译 C 程序文件,是顺序读取并分析的,当分析到:
accNumber=createAccNumber();
这行时,编译器发现有个函数 createAccNumber 被调用了,但在此之前,编译器没有找到 createAccNumber 函数的声明或定义,编译器无法知道这个函数的“相关信息”,比如这个函数有什么参数(类型和个数),返回值的类型等等。编译器就无法保证“类型安全”,比如,在这里,编译器就只有假设 createAccNumber 函数是返回了整型,但如果你在后面或其它文件里定义 createAccNumber 返回浮点型或长整型(总之不是整型),那么编译生成的执行文件运行时,就可能出错。
所以,最好养成习惯:在调用一个函数之前,先声明或定义它。
声明,就是只写出函数的“原型”,而不给出代码(可以在后面或其它文件里给出),如:
int createAccNumber(void); /* 注意分号 */
定义,就是给出完整的函数程序代码,如:
int createAccNumber(void) /* 这里没有分号 */
{
// 以下是你的函数代码
...
}
刚才说的 string.h,实际上就是包含了 memset 函数的原型。
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询