

You Tube
C言語プログラミング講座第二回 - 計算と変数 -
で最後に以下のプログラムが出てきます。
#include <stdio.h>
int main(){
int x = 5;
int y = 8;
printf("%d * %d = %d\n" , x,y, x * y);
int X = 3 ;
int y = 11;
printf("%d * %d = %d\n" , x,y, x * y);
return 0;
}
http://codepad.org/
でコンパイルすると
In function 'main':
In function 'main':
Line 8: error: redefinition of 'y'
Line 5: error: previous definition of 'y' was here 以上エラーが出ます。
以上のエラー直訳後は以下です。
関数内の「メイン」:
8行目:エラー: 'Y'の再定義
5行目:エラー:'Y'の前の定義ここにいた
以上ですが!
転記ミスでしょうか?
よろしくお願いします。
No.6ベストアンサー
- 回答日時:
> intがなかったらOKですかね
Xも小文字のxの誤記ですので、それらを修正すればOKですよ。
#include <stdio.h>
int main(){
int x = 5;
int y = 8;
printf("%d * %d = %d\n" , x,y, x * y);
x = 3 ;
y = 11;
printf("%d * %d = %d\n" , x,y, x * y);
return 0;
}
親切なご回答誠にありがとうございました。
単純なミスの連続で
お騒がせしました。
基本的なしっかり見る力がまだまだ私には無いようです。
No.5
- 回答日時:
正確にいうとそれは「直訳」ではない.
Line 8: error: redefinition of 'y'
を「正しく」直訳すると
8行目:エラー: 'y'の再定義
である.
No.3
- 回答日時:
転記ミスです。
ビデオのプログラムには無いものがあなたのプログラムにはあります。int y = 11;
という文はそのビデオの前のほうで説明している通り
int y;
y = 11;
の略記です。……本当は違うんですが、まあこのビデオ講義の段階ではいったんそう思っていてください。
そして、前の方に
int y = 8;
というのがありますよね。それも上記のように分けて書くと、
int y;
y = 8;
となります。つまり、"int y;" という記述が複数回あらわれているわけで、それがエラーの原因です。
……というか、おめでとうございます。あなたは「いったん定義された変数と同じ名前の変数をもう一度定義しなおすことはできない」という事を体感できたのです。
実際には変数のスコープという概念があってそれによって新たに定義できることもあるのですが、そんなことをしてもただ単にソースがわかりづらくなるだけなので普通はやりません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
構造体を引数とする、クラス間...
-
main.c:7:43: warning: implici...
-
【#define】 defineで定義した...
-
C++/CLIでネイティブの構造体を...
-
2重定義って??
-
構造体の要素すべてに対する四...
-
C++でboolにintの値を代入する...
-
C++のコンストラクタを宣言する...
-
C#でオセロを作っているのです...
-
64bit → 32bit型へのキャスト
-
DWORDの実際の型は何でしょうか
-
C言語のコンパイルエラー
-
相互参照するクラス、俺こんな...
-
24ビットの変数
-
long型の定数の末尾にLを付ける...
-
最早開始時間と最遅完了時刻を...
-
Aの値からBの値を除するとは??
-
信頼区間の1.96や1.65ってどこ...
-
#define _CRT_SECURE_NO_WARNIN...
-
C言語 エラーの原因がわからな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
main.c:7:43: warning: implici...
-
long型の定数の末尾にLを付ける...
-
DWORDの実際の型は何でしょうか
-
visualstudio C# テキストボッ...
-
2重定義って??
-
C++のfor文について
-
変数の型を定義しなかった場合...
-
ハンドルされていない例外が発...
-
intとINTの違いは?
-
C++でboolにintの値を代入する...
-
構造体の要素すべてに対する四...
-
プログラムの中で別のmainを呼...
-
エラー「invalid conversion fr...
-
GCCで暗黙の型変換の警告を出し...
-
【#define】 defineで定義した...
-
sshdログの意味
-
DDVによるメッセージの変更
-
typedef enumの使い方を教えて...
-
構造体を生成時にわざわざ初期...
-
DLLでLIBファイルが作成されない
おすすめ情報