這是源程序:// 1.cpp : 定義控制臺應用程序的入口點。//#include "stdafx.h"#include<iostream>#define SAFE_DELETE_ARRAY(p) { if (p) {delete []p; p=NULL;}}#define ROLE_COUNT 5#define NAME_LEN 20using std::cin;using std::cout;using std::endl;typedef struct _ROLE{int HP;int level;char name[NAME_LEN +1];}ROLE,*LPROLE;int _tmain(int argc,_TCHAR* argv[]){LPROLE role=NULL;role=new ROLE[ROLE_COUNT];memset(role,0,sizeof(ROLE)*ROLE_COUNT);FILE*file=NULL;if((file=fopen("role.txt","r+"))==NULL){cout<<"角色文件沒有找到,角色加載失敗!請重新創建角色。"<<endl;}else{for(int i=0;i<ROLE_COUNT;i++)fscanf(file,"%d%d%s",&role[i].HP,&role[i].level,role[i].name);fclose(file);}printf("HP\t等級\t昵稱\n");for(int i=0;i<ROLE_COUNT;i++)printf("%d\t%d\t%s\n",role[i].HP,role[i].level,role[i].name);for(int i=0;i<ROLE_COUNT;i++){cout<<"輸入第"<<i+1<<"個角色的HP:"<<endl;cin>>role[i].HP;cout<<"輸入第"<<i+1<<"個角色的等級:"<<endl;cin>>role[i].level;cout<<"輸入第"<<i+1<<"個角色的名字:"<<endl;cin>>role[i].name;}for(int i=0;i<ROLE_COUNT;i++)printf("%d\t%d\t%s\n",role[i].HP,role[i].level,role[i].name);if ((file=fopen("role. txt","w+"))==NULL){cout<<"角色文件保存失??!"<<endl;}else{for (int i=0;i<ROLE_COUNT;i++)fprintf(file,"%d\t%d\t%s\n",role[i].HP,role[i].level,role[i].name);fclose(file);}SAFE_DELETE_ARRAY(role);return 0;}運行時出現3個警告(說下 這不是警告級別的問題哦。)還有就是:1,cpptest.cpp(27) : warning C4996: “fopen”被聲明為否決的。2,cpptest.cpp(35) : warning C4996: “fscanf”被聲明為否決的。3,cpptest.cpp(55) : warning C4996: “fopen”被聲明為否決的。結果為:角色文件沒有找到,角色加載失??!請重新創建角色HP 等級 level0 0 0 持續五行0,在出現請輸入第一個角色的HP:
- 2 回答
- 0 關注
- 165 瀏覽
添加回答
舉報
0/150
提交
取消
