課題

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ジェイ

課題

#1

投稿記事 by ジェイ » 9年前

課題が明日までなのですが課題(ゲーム)が完成しなくて困っています。
ゲームの内容はサッカーのPK(5回戦*5回で決着がつかなければ延長戦)というもので
自分なりにある程度作ったのですがテストしてみたところ、自分では理解できないエラーが出てきたため助けてほしいです。
PS.ソースでここはこうしたほうが良いというところがある場合、PSと書いたうえその後ろにソースとコメントを書いて頂けると助かります。
その他何かあればこちらにmreothe@gmail.com
長文すみません。

エラー一覧↓
{エラー 4 error LNK2001: 外部シンボル "__imp__system" は未解決です。 C:\Users\ths50065\Desktop\kadai\main.obj kadai}

{エラー 2 error LNK2001: 外部シンボル "__imp__scanf" は未解決です。 C:\Users\ths50065\Desktop\kadai\main.obj kadai}

{エラー 1 error LNK2001: 外部シンボル "__imp__rewind" は未解決です。 C:\Users\ths50065\Desktop\kadai\main.obj kadai}

{エラー 5 error LNK2001: 外部シンボル "__imp__printf" は未解決です。 C:\Users\ths50065\Desktop\kadai\main.obj kadai}

{エラー 6 error LNK2001: 外部シンボル "__imp__getchar" は未解決です。 C:\Users\ths50065\Desktop\kadai\main.obj kadai}

{エラー 3 error LNK2001: 外部シンボル "__imp____iob_func" は未解決です。 C:\Users\ths50065\Desktop\kadai\main.obj kadai}


プログラム↓

コード:

//------------------------------------------------------------------------------------------------------------------
// メイン処理(main.cpp)
// 
//------------------------------------------------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <windows.h>
#include <conio.h>
//------------------------------------------------------------------------------------------------------------------
//	マクロ定義
//------------------------------------------------------------------------------------------------------------------
#define MAX_PLAYER (2)			//プレイヤーの最大値
#define MAX_NAME (5)			//プレイヤーの名前の最大値
#define MAX_MATCH (5)			//最大試合数
#define FILE_NAME "SaveDate,bin"//バイナリデータ名マクロ
#define _CRT_SECURE_NO_	//ビルドエラー用
//------------------------------------------------------------------------------------------------------------------
// 構造体の定義
//------------------------------------------------------------------------------------------------------------------
typedef struct{
	unsigned char nName [MAX_NAME];	//名前
	int nTechnique;				//テクニック
	int nKickPower;				//キック力
	int nLuck;					//運
	int nGoal[MAX_MATCH];		//ゴール数
}PLAYER;
//------------------------------------------------------------------------------------------------------------------
// プロトタイプ宣言
//------------------------------------------------------------------------------------------------------------------
void Title(void);										//タイトル
void Input(PLAYER *aPlayer);							//入力処理
void Status(PLAYER *aPlayer);							//ステータス処理
void Output(PLAYER *aPlayer);							//出力処理
bool Battle(PLAYER *aPlayerAtk,PLAYER *aPlayerDef);		//バトル処理
bool Overtime(PLAYER *aPlayerAtk,PLAYER *aPlayerDef);	//延長戦
void Result(PLAYER *aPlayer);							//結果
void KeyWait(void);										//キー待ち関数
//------------------------------------------------------------------------------------------------------------------
// メイン関数
//------------------------------------------------------------------------------------------------------------------
int main( void )
{
	//変数宣言
	PLAYER aPlayer[MAX_PLAYER];		//構造体
	bool bEndBattle;				//勝敗
	int nCntMatch=0;
	//タイトル
	Title();

	//入力処理
	Input(&aPlayer[0]);

	//ステータス処理
	Status(&aPlayer[0]);

	//出力処理
	Output(&aPlayer[0]);

	//バトル処理
	bEndBattle = false;
	while(bEndBattle == false)
	{
		for(nCntMatch=0; nCntMatch < MAX_MATCH; nCntMatch++)//最大試合数分(5)ループ
		{
			Battle(&aPlayer[0],&aPlayer[1]);
			bEndBattle = Battle(&aPlayer[1],&aPlayer[0]);
			bEndBattle = Battle(&aPlayer[0],&aPlayer[1]);
			printf("%sのスコア\n",aPlayer[0].nName);
			printf("%d|%d|%d|%d|%d|\n",aPlayer[0].nGoal[0],aPlayer[0].nGoal[1],aPlayer[0].nGoal[2],aPlayer[0].nGoal[3],aPlayer[0].nGoal[4]);
			printf("%sのスコア\n",aPlayer[1].nName);
			printf("%d|%d|%d|%d|%d|\n",aPlayer[1].nGoal[0],aPlayer[1].nGoal[1],aPlayer[1].nGoal[2],aPlayer[1].nGoal[3],aPlayer[1].nGoal[4]);
		}
	}
	//結果
	Result(&aPlayer[0]);

	//キーボタン押し待ちの処理
	printf("\nプログラムを終了します。何かキーを押してください。");
	rewind( stdin );
	getchar();
}
//------------------------------------------------------------------------------------------------------------------
// タイトル
//------------------------------------------------------------------------------------------------------------------
void Title(void)
{
	//メインタイトル(枠2マスは確保)
	//ペナルティ
	//_____|_________5________10________15________20________25________30________35________40|
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●○●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●○○●●●●●●●●○●●●●●○●○●●●●●○○○●●●●●●●●\n");
	printf("●●●●○●●○●●●●○○○○○○●●●○●○●●●●●●●●●●●●●●●●\n");
	printf("●●●○●●●●○●●●●●●○●●●●●○●○●○●●○○○○○●●●○●●●\n");
	printf("●●○●●●●●●○●●●●●○●●●●●○●○●○●●●●○●●●●○○●●●\n");
	printf("●●●●●●●●●●○●●○○●●●●●○●●●○●●●●○●●●●●●○●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	//キッカー
	//_____|_________5________10________15________20________25________30________35________40|
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●○●●●●●●●●●●●●●●●○●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●○○○○○●●●●●●●●●●○○○○○○●●●●●●●●●●●●●●●\n");
	printf("●●●●●●○●●●●●○●○●○●●●●○●●○●●○○○○○●●●●●●●●\n");
	printf("●●●●○○○○○●●●○●○●○●●●○●●●○●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●○●●●●●●●○●●●○●●○○●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●○●●●●●○●●●●●●●○●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	//コピーライト
	//_____|_________5________10________15________20________25________30________35________40|
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●[START_Enter_]●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	KeyWait();		//キー入力待ち
}
//------------------------------------------------------------------------------------------------------------------
// 入力処理
//------------------------------------------------------------------------------------------------------------------
 void Input(PLAYER *aPlayer)
{
	int nCntPlayer;
	for( nCntPlayer=0 ; nCntPlayer < MAX_PLAYER ; nCntPlayer++ )
	{
		printf("%d P:あなたの名前を教えてださい\n(%s文字まで)\n",nCntPlayer+1,MAX_NAME);
		printf("->");
		scanf("%s",&aPlayer->nName);
		KeyWait();		//キー入力待ち
		aPlayer++;
	}
}//int Input()の終わり
//------------------------------------------------------------------------------------------------------------------
// ステータス処理
//------------------------------------------------------------------------------------------------------------------
 void Status(PLAYER *aPlayer)
 {
	aPlayer[0].nTechnique = (int)aPlayer[0].nName[0]+aPlayer[0].nName[1];
	aPlayer[0].nKickPower = (int)aPlayer[0].nName[2]+aPlayer[0].nName[3];
	aPlayer[0].nLuck = (int)aPlayer[0].nName[4]+aPlayer[0].nName[5];
	aPlayer[1].nTechnique = (int)aPlayer[1].nName[0]+aPlayer[1].nName[1];
	aPlayer[1].nKickPower = (int)aPlayer[1].nName[2]+aPlayer[1].nName[3];
	aPlayer[1].nLuck = (int)aPlayer[1].nName[4]+aPlayer[1].nName[5];
 }
//------------------------------------------------------------------------------------------------------------------
// 出力処理
//------------------------------------------------------------------------------------------------------------------
void Output(PLAYER *aPlayer)
{
	int nCntPlayer;
	for( nCntPlayer=0; nCntPlayer < MAX_PLAYER ; nCntPlayer++ )
	{
		printf("プレイヤー%d P\n",nCntPlayer+1);
		printf("名前      : %s\n",aPlayer->nName);
		printf("テクニック: %d\n",aPlayer->nTechnique);
		printf("シュート力: %d\n",aPlayer->nKickPower);
		printf("運        : %d\n",aPlayer->nLuck);
		KeyWait();		//キー入力待ち
		aPlayer++;
	}
}
//------------------------------------------------------------------------------------------------------------------
// バトル処理
//------------------------------------------------------------------------------------------------------------------
bool Battle(PLAYER *aPlayerAtk,PLAYER *aPlayerDef)
{
	int nCntMatch=0;			//試合数カウンタ
	int nAkey=0,nDkey=0;		//A(キッカー側)D(キーパー側)キー
	int nKey;					//キー判定
//操作はq左上w上e右上a左下s下d右下
	//それぞれの値を初期化
	nAkey=0;
	nDkey=0;
	printf("%sさんがボールの前に立ちました\n",aPlayerAtk->nName);
	printf("%sはどこを狙う?\n",aPlayerAtk->nName);
	printf("□□□\n");
	printf("□□□\n");
	scanf("%d",&nKey);
	KeyWait();		//キー入力待ち
	
	//キッカー側
	switch (nKey)
	{
		case 'a':
		{
			printf("□□□\n");
			printf("■□□\n");
			KeyWait();		//キー入力待ち
			nAkey = 1;
			break;
		}
		case 's':
		{
			printf("□□□\n");
			printf("□■□\n");
			KeyWait();		//キー入力待ち
			nAkey = 2;
			break;
		}
		case 'd':
		{
			printf("□□□\n");
			printf("□□■\n");
			KeyWait();		//キー入力待ち
			nAkey = 3;
			break;
			}
		case 'q':
		{
			printf("■□□\n");
			printf("□□□\n");
			KeyWait();		//キー入力待ち
			nAkey = 4;
			break;
		}
		case 'w':
		{
			printf("□■□\n");
			printf("□□□\n");
			KeyWait();		//キー入力待ち
			nAkey = 5;
			break;
		}
		case 'e':
		{
			printf("□□■\n");
			printf("□□□\n");
			KeyWait();		//キー入力待ち
			nAkey = 6;
			break;
		}
	}
	//画面更新
	printf("%sさんは%sと操作を交代してください\n",aPlayerAtk->nName,aPlayerDef->nName);
	printf("%sさんは%sの番が終わるまで画面見ないように\n",aPlayerAtk->nName,aPlayerDef->nName);
	KeyWait();		//キー入力待ち
	//キーパー側
	printf("%sはどこに飛ぶ?\n",aPlayerDef->nName);
	printf("□□□\n");
	printf("□□□\n");
	scanf("%d",&nKey);
	
	KeyWait();		//キー入力待ち
	switch (nKey)
	{
		case 'a':
		{
			printf("□□□\n");
			printf("■□□\n");
			
			KeyWait();		//キー入力待ち
			nDkey = 1;
			break;
		}
		case 's':
		{
			printf("□□□\n");
			printf("□■□\n");
			
			KeyWait();		//キー入力待ち
			nDkey = 2;
			break;
		}
		case 'd':
		{
			printf("□□□\n");
			printf("□□■\n");
			
			KeyWait();		//キー入力待ち
			nDkey = 3;
			break;
		}
		case 'q':
		{
			printf("■□□\n");
			printf("□□□\n");
			
			KeyWait();		//キー入力待ち
			nDkey = 4;
			break;
		}
		case 'w':
		{
			printf("□■□\n");
			printf("□□□\n");
			
			KeyWait();		//キー入力待ち
			nDkey = 5;
			break;
		}
		case 'e':
		{
			printf("□□■\n");
			printf("□□□\n");
			
			KeyWait();		//キー入力待ち
			nDkey = 6;
			break;
		}
	}
	if(nAkey=nDkey)
	{
		if((aPlayerAtk->nKickPower+aPlayerAtk->nTechnique)*aPlayerAtk->nLuck<aPlayerDef->nTechnique*1.25*aPlayerDef->nLuck)
		{
			printf("%sが決めたぁぁ!\n",aPlayerAtk->nName);
			KeyWait();		//キー入力待ち
			aPlayerAtk[0].nGoal[0]++;
		}
		else
		{
			printf("%sが止めたぁぁ!\n",aPlayerDef->nName);
			KeyWait();		//キー入力待ち
		}
	}
	else
	{
		if((aPlayerAtk->nKickPower+aPlayerAtk->nTechnique)*aPlayerAtk->nLuck<aPlayerDef->nTechnique*1.25*aPlayerDef->nLuck)
		{
			printf("%sが外したぁぁ!\n",aPlayerAtk->nName);
			KeyWait();		//キー入力待ち
		}
		else
		{
			printf("%sが決めたぁぁ!\n",aPlayerAtk->nName);
			KeyWait();		//キー入力待ち
			aPlayerAtk[0].nGoal[0]++;
		}
	}
	nCntMatch++;
	if(nCntMatch=10)
	{
		return true;
	}
	return false;
}
//------------------------------------------------------------------------------------------------------------------
// 結果
//------------------------------------------------------------------------------------------------------------------
void Result(PLAYER *aPlayer)
{
	bool bEndBattle;	//勝敗
	int nCntMatch=0;	//試合数カウント
	bEndBattle = false;
	//試合結果
	if(aPlayer[0].nGoal[0]>aPlayer[1].nGoal[0])
	{
		printf("%sが試合に勝利した\n",aPlayer[0].nName);
		KeyWait();//キー入力待ち
	}
	else if(aPlayer[0].nGoal[0]<aPlayer[1].nGoal[0])
	{
		printf("%sが試合に勝利した\n",aPlayer[1].nName);
		KeyWait();//キー入力待ち
	}
	else if(aPlayer[0].nGoal[0]<aPlayer[1].nGoal[0])//得点が同じ場合
	{
		printf("延長戦%d戦目",nCntMatch++);
		//延長戦
		while(bEndBattle == false)
		{
			Overtime(&aPlayer[0],&aPlayer[1]);
			bEndBattle = Battle(&aPlayer[1],&aPlayer[0]);
			bEndBattle = Battle(&aPlayer[0],&aPlayer[1]);
			printf("%sのスコア\n",aPlayer[0].nName);
			printf("%d|%d|%d|%d|%d|\n",aPlayer[0].nGoal);
			printf("%sのスコア\n",aPlayer[1].nName);
			printf("%d|%d|%d|%d|%d|\n",aPlayer[1].nGoal);
			return Result(0);
		}
	}
}
//------------------------------------------------------------------------------------------------------------------
// 延長戦
//------------------------------------------------------------------------------------------------------------------
bool Overtime(PLAYER *aPlayerAtk,PLAYER *aPlayerDef)
{
	int nAkey=0,nDkey=0;	//A(キッカー側)D(キーパー側)キー
	int nKey;				//キー判定

	//それぞれの値を初期化
	nAkey=0;
	nDkey=0;
		printf("%sと%sのPKは延長戦に入った!");
		printf("%sさんがボールの前に立ちました\n",aPlayerAtk->nName);
		printf("%sはどこを狙う?\n",aPlayerAtk->nName);
		printf("□□□\n");
		printf("□□□\n");
		scanf("%d",&nKey);
		
		KeyWait();		//キー入力待ち
		//キッカー側
		switch (nKey)
		{
			case 'a':
			{
				printf("□□□\n");
				printf("■□□\n");
				KeyWait();		//キー入力待ち
				nAkey = 1;
				break;
			}
			case 's':
			{
				printf("□□□\n");
				printf("□■□\n");
				KeyWait();		//キー入力待ち
				nAkey = 2;
				break;
			}
			case 'd':
			{
				printf("□□□\n");
				printf("□□■\n");
				KeyWait();		//キー入力待ち
				nAkey = 3;
				break;
			}
			case 'q':
			{
				printf("■□□\n");
				printf("□□□\n");
				KeyWait();		//キー入力待ち
				nAkey = 4;
				break;
			}
			case 'w':
			{
				printf("□■□\n");
				printf("□□□\n");
				KeyWait();		//キー入力待ち
				nAkey = 5;
				break;
			}
			case 'e':
			{
				printf("□□■\n");
				printf("□□□\n");
				KeyWait();		//キー入力待ち
				nAkey = 6;
				break;
			}
		}
		//画面更新
		printf("%sさんは%sと操作を交代してください\n",aPlayerAtk->nName,aPlayerDef->nName);
		printf("%sさんは%sの番が終わるまで画面見ないように\n",aPlayerAtk->nName,aPlayerDef->nName);
		KeyWait();		//キー入力待ち
		//キーパー側
		printf("%sはどこに飛ぶ?\n",aPlayerDef->nName);
		printf("□□□\n");
		printf("□□□\n");
		scanf("%d",&nKey);
		
		KeyWait();		//キー入力待ち
		switch (nKey)
		{
			case 'a':
			{
				printf("□□□\n");
				printf("■□□\n");
				
				KeyWait();		//キー入力待ち
				nDkey = 1;
				break;
			}
			case 's':
			{
				printf("□□□\n");
				printf("□■□\n");
				
				KeyWait();		//キー入力待ち
				nDkey = 2;
				break;
			}
			case 'd':
			{
				printf("□□□\n");
				printf("□□■\n");
				
				KeyWait();		//キー入力待ち
				nDkey = 3;
				break;
			}
			case 'q':
			{
				printf("■□□\n");
				printf("□□□\n");
				
				KeyWait();		//キー入力待ち
				nDkey = 4;
				break;
			}
			case 'w':
			{
				printf("□■□\n");
				printf("□□□\n");
				
				KeyWait();		//キー入力待ち
				nDkey = 5;
				break;
			}
			case 'e':
			{
				printf("□□■\n");
				printf("□□□\n");
				KeyWait();		//キー入力待ち
				nDkey = 6;
				break;
			}
		}
		if(nAkey=nDkey)
		{
			if((aPlayerAtk->nKickPower+aPlayerAtk->nTechnique)*aPlayerAtk->nLuck<aPlayerDef->nTechnique*1.5*aPlayerDef->nLuck)
			{
				printf("%sが決めたぁぁ!\n",aPlayerAtk->nName);
				KeyWait();		//キー入力待ち
				aPlayerAtk[0].nGoal[0]++;
			}
			else
			{
				printf("%sが止めたぁぁ!\n",aPlayerDef->nName);
				KeyWait();		//キー入力待ち
			}
		}
		else
		{
			if((aPlayerAtk->nKickPower+aPlayerAtk->nTechnique)*aPlayerAtk->nLuck<aPlayerDef->nTechnique*1.5*aPlayerDef->nLuck)
			{
				printf("%sが外したぁぁ!\n",aPlayerAtk->nName);
				KeyWait();		//キー入力待ち
			}
			else
			{
				printf("%sが決めたぁぁ!\n",aPlayerAtk->nName);
				KeyWait();		//キー入力待ち
				aPlayerAtk[0].nGoal[0]++;
			}
		}
	return true;
}
//------------------------------------------------------------------------------------------------------------------
// キー待ち処理
//------------------------------------------------------------------------------------------------------------------
void KeyWait(void)
{
	printf("ENTERキーを押してください\n");
	/* キーボタン押し待ちの処理 */
	rewind( stdin );
	getchar();
system("cls");//画面更新

ジェイ

Re: 課題

#2

投稿記事 by ジェイ » 9年前

これは自力で解決しました!
つぎは CP11_kadai09.exe の 0x61fc20a7 (msvcr100d.dll) でハンドルされていない例外が発生しました: 0xC0000005: 場所 0x00000005 を読み込み中にアクセス違反が発生しました。
というエラーが出たのでクリックしたら
 Output.cの

コード:

while (i-- && *p)
                        ++p;
                    textlen = (int)(p - text.sz);    /* length of the string */
                }
というところが参照されました。
ちなみにVisualStadio2010です

box
記事: 2002
登録日時: 14年前

Re: 課題

#3

投稿記事 by box » 9年前

ジェイ さんが書きました:課題が明日までなのですが課題(ゲーム)が完成しなくて困っています。

コード:

	if(nAkey=nDkey)
	if(nCntMatch=10)
		if(nAkey=nDkey)
これらのif文は、まずいのではないでしょうか。
=
が1個でいいですか?
バグのないプログラムはない。
プログラムは思ったとおりには動かない。書いたとおりに動く。

ジェイ

Re: 課題@boxさん

#4

投稿記事 by ジェイ » 9年前

返信ありがとうございます!
そうですねwすっかり忘れていました!
==にしたらさっきのエラーはなくなったのですが今度は
エラー↓
エラー 2 error C1083: include ファイルを開けません。'mtdll.h': No such file or directory c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 32 kadai  1

エラー 1 error C2059: 構文エラー : '文字列' c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 24 kadai 1


といったエラーがでたためクリックしたら
output.cというファイルの

コード:

/***
*output.c - printf style output to a FILE
*
*       Copyright (c) Microsoft Corporation. All rights reserved.
*
*Purpose:
*       This file contains the code that does all the work for the
*       printf family of functions.  It should not be called directly, only
*       by the *printf functions.  We don't make any assumtions about the
*       sizes of ints, longs, shorts, or long doubles, but if types do overlap,
*       we also try to be efficient.  We do assume that pointers are the same
*       size as either ints or longs.
*       If CPRFLAG is defined, defines _cprintf instead.
*       **** DOESN'T CURRENTLY DO MTHREAD LOCKING ****
*
*Note:
*       this file is included in safecrt.lib build directly, plese refer
*       to safecrt_[w]output_s.c
*
*******************************************************************************/

/* temporary work-around for compiler without 64-bit support */
#ifndef _SAFECRT_IMPL
extern "C"
{
#endif  /* _SAFECRT_IMPL */

#ifdef POSITIONAL_PARAMETERS
#define FORMAT_VALIDATIONS
#endif  /* POSITIONAL_PARAMETERS */

[color=#FF0000]#include [/color]<mtdll.h>
[color=#FF0000]#include [/color]<cruntime.h>
#include <limits.h>
#include <string.h>
#include <stddef.h>
#include <crtdefs.h>
#include <stdio.h>
#include <stdarg.h>
[color=#FF0000]#include [/color]<cvt.h>
#include <conio.h>
[color=#FF0000]#include [/color]<internal.h>
[color=#FF0000]#include [/color]<fltintrn.h>
#include <stdlib.h>
#include <ctype.h>
[color=#FF0000]#include [/color]<dbgint.h>
[color=#FF0000]#include [/color]<setlocal.h>
というのが出てきました。
そのうち赤い部分には赤波線があります(カーソルを合わせるとそれぞれの左の<>のソースファイルを開けませんと出てきます)。

ジェイ

Re: 課題

#5

投稿記事 by ジェイ » 9年前

すみません コードのところのカラーミスりました
エラーは
13 IntelliSense: 識別子 "EINVAL" が定義されていません c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 1027 kadai 41

19 IntelliSense: 識別子 "EILSEQ" が定義されていません c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 2568 kadai 28

12 IntelliSense: 識別子 "_VALIDATE_RETURN" が定義されていません c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 1027 kadai 5

14 IntelliSense: 識別子 "_malloc_crt" が定義されていません c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 1755 kadai 39

11 IntelliSense: 識別子 "_LocaleUpdate" が定義されていません c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 1002 kadai 5

18 IntelliSense: 識別子 "_free_crt" が定義されていません c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 2282 kadai 17

16 IntelliSense: 識別子 "_forcdecpt_l" が定義されていません c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 1836 kadai 21

17 IntelliSense: 識別子 "_cropzeros_l" が定義されていません c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 1842 kadai 21

15 IntelliSense: 識別子 "_cfltcvt_l" が定義されていません c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 1824 kadai 21

10 IntelliSense: ソース ファイルを開けません "setlocal.h" c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 47 kadai 1

4 IntelliSense: ソース ファイルを開けません "mtdll.h" c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 32 kadai 1

7 IntelliSense: ソース ファイルを開けません "internal.h" c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 42 kadai 1

8 IntelliSense: ソース ファイルを開けません "fltintrn.h" c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 43 kadai 1

9 IntelliSense: ソース ファイルを開けません "dbgint.h" c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 46 kadai 1

6 IntelliSense: ソース ファイルを開けません "cvt.h" c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 40 kadai 1

5 IntelliSense: ソース ファイルを開けません "cruntime.h" c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 33 kadai 1

3 IntelliSense: PCH 警告: ヘッダーの停止はマクロまたは #if ブロックには配置できません。Intellisense PCH ファイルは生成されませんでした。 c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 24 kadai 1

エラー 1 error C2059: 構文エラー : '文字列' c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 24 kadai 1

エラー 2 error C1083: include ファイルを開けません。'mtdll.h': No such file or directory c:\program files (x86)\microsoft visual studio 10.0\vc\crt\src\output.c 32 kadai 1


ジェイ

Re: 課題

#6

投稿記事 by ジェイ » 9年前

先ほどの大量のエラーは自力でなんとかできました
しかしながら
kadai.exe の 0x628320a7 (msvcr100d.dll) でハンドルされていない例外が発生しました: 0xC0000005: 場所 0x00000005 を読み込み中にアクセス違反が発生しました。
というエラーメッセージと

コード:

while (i-- && *p)
を参照するエラーが治りません
scanfをscanf_sに変えたり手を打ってるんですがどうすればよいでしょうか

閉鎖

“C言語何でも質問掲示板” へ戻る