図1は5行目の;を忘れたプログラム(sample1.c)です.このプログラムをコンパイルすると,図2のように表示されます. 黄色の部分がエラーの候補の行番号,黄緑の部分がエラーメッセージです. errorが見つかったときはsample1.exeは生成されません.
このプログラムでは間違っている(「;」がない)のは5行目ですが, 今回はコンパイラがエラーを検知できたのが6行目なので6行目についてのエラーメッセージが表示されています. 行番号の位置にエラーが存在する場合が多いですが,このように行番号より前の部分にエラーがある場合もありますので, エラーメッセージからエラーの内容を類推してエラーを探してください.
また,エラーが複数見つかったときは,最初に見つかったエラーが他のエラーを誘発している可能性があり, 最初のエラーを直すことで他のエラーが消えることもあります. そのため,エラーが複数見つかった場合は,上から1つずつエラーを修正し,コンパイルし,エラーが残っていたらまた修正するということを繰り返すことを勧めます.
なお,行番号が表示されず,「エントリーポイントが見つかりません」と表示される場合は {{main}}関数が見つからないという意味です.
warningとは警告のことで,文法的には正しいが,好ましくないプログラムをコンパイルした際に検出されます. warningはerrorと異なり,実行ファイル(*.exe)を生成しますが,ほとんどの場合,正しく動作しません. 一見,正しく動作しているように見えても適切な動作をしていない場合が多いです. warningが表示されている場合は,そのプログラムは間違っていると考え,修正してください.
図3は変数{{a}}に値を代入する前にその値を表示しようとするプログラムで,図4はそのコンパイル結果です. エラーのときと同様に黄色の部分が警告の候補の行番号,黄緑の部分が警告メッセージです.
このプログラムでは,{{a}}の値が不定(一度も値が代入されておらず,値がプログラムで定められていない状態)のまま, 6行目の{{printf}}で値を使用しているので警告が表示されます.