アプリケーションエラーの対処法

[戻る]
もも 2006/01/22(日) 15:10:32
C言語初心者です。

以下はコンパイルはできるのですが、実行しようとするとアプリケーションエラーがでてしまい
ます。

#include<stdio.h>
void smp(int**abc);

int main()

{
int a=1;
int b=2;
int c=3;
int *abc[]={&a,&b,&c}
smp(abc);
printf("a=%d b=%d c=%d \n",a,b,c);
}

void smp(int**abc)
{
int i;
for(i=1;i<3;i++,abc++){
**abc*=10;
**abc+=**(abc+i);
}
}

 どこがエラーの原因なのでしょうか?また、どのようにすればエラーがでないでしょうか?
 よろしくご回答お願いします。

Ban 2006/01/22(日) 15:55:19
> どこがエラーの原因なのでしょうか?

基本的には、バグが残っているだけです。
# コンパイルできただけのプログラムが、そのままで全て正しく動くなら、
# 世の中にバグのあるソフトなんてなくなるのでは。

配列のインデクスとかポインタとか再確認してみてください。

場所という意味では、あえて「smp の中」としか書きません。デバッグすればわかるはず
です。

> また、どのようにすればエラーがでないでしょうか?

デバッグして、バグをつぶしてください。

printfを埋め込むなり、VCなら「ステップ実行」してみるなり。

もも 2006/01/22(日) 19:56:07
[[解決]]
ありがとうございます。早速試してみます。

古いスレッドには追加発言できません。