「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

文法エラー

pointこの用語のポイント

pointエラーだよ

pointプログラムの書き方が おかしいよ

pointコンパイル時に発生するよ

スポンサーリンク

簡単に書くよ

文法エラー(読:ブンポウエラー 英:syntax error)とは

「構文エラー」のこと。
用語の中身としては

「プログラムの書き方が間違っていますよ」エラーのこと
です。
もう少し具体的に書くと

人間語で書いたプログラムの元ネタを人間語から機械語へ翻訳(コンパイル)するときに発生するかもしれないエラー
であり

「書き方が間違っているから人間語のプログラムをコンピュータさんが分かる形に翻訳できませんでした」エラーのこと
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として、プログラムの作り方と「コンパイル」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

プログラムを作って動かすまでの一般的な流れは

1.人間語でプログラムの元ネタを書く
2.元ネタを人間語から機械語に翻訳する
3.翻訳された指示に従って、コンピュータさんが お仕事する


です。

文法エラー

コンピュータさんは人間語が分かりません。

文法エラー2

人間様はコンピュータさんの言葉が分かりません。

文法エラー3

プログラムは人間様が作るものです。
そこで最初は人間様が分かる言葉でプログラムを作ります。
コンピュータさんに対する「あれをやれ」「これをやれ」な命令を人間語で書くのです。

文法エラー4

次に人間語で書いたプログラムの元ネタをコンピュータさんが分かる言葉に翻訳します。
実際に お仕事をするのは、コンピュータさんですからね。
コンピュータさんが分かる言葉に変換する必要があるのです。

文法エラー5

コンピュータさんが分かる言葉に翻訳したので、コンピュータさんは命令の内容を理解できます。
指示に従って、お仕事をしてくれるでしょう。

文法エラー6

かなり簡略化した説明ですけどね。
これがプログラムを作るときの流れです。

この話で登場した「人間語で書いたプログラムの元ネタをコンピュータさんが分かる言葉に翻訳する作業」を「コンパイル」と言います。
人間語を機械語に翻訳する作業です。

文法エラー7

以上を踏まえて、本題に入ります。

コンパイルは人間語で書かれたプログラムをコンピュータさんが分かる形(機械語)に翻訳する作業です。

文法エラー8

このときに発生するエラー

「書き方が間違っていますよ!」エラー

が「文法エラー」です。
構文エラー」や「シンタックスエラー」などとも呼ばれます。

文法エラー9

例えば、そうですね。
ピヨ太君が人間語で以下の処理を書いたとしましょう。

1.掃除をしろ
2.洗濯をしろ
3、おっぺけぺー!
4.ご飯を作れ


コンパイルするのがお仕事のプログラムコンパイラは、この内容を機械語に翻訳します。

文法エラー10

1行目には

1.掃除をしろ

と書いてあります。
これを

ソウジヲシーロ

に翻訳しました。

文法エラー11

2行目には

2.洗濯をしろ

と書いてあります。
これを

センタクヨロシク

に翻訳しました。

文法エラー12

3行目には

3、おっぺけぺー!

と書いてあります。
これを……何じゃ?こりゃ。

文法エラー13

何が書いてあるのか、よく分かりません。
これでは機械語に翻訳するのは無理です。

こんなときにコンパイラさんは、どうするでしょう?

答えは

翻訳を諦める

です。
「変なことが書いてあるな」と判断して「おい、おかしなことが書いてあるぞ!出直して来い!」と差し戻します。

文法エラー14

これが文法エラーです。

「書き方が間違っているぞ!」エラー

です。

文法エラーが発生するとコンパイルは失敗します。
動かせるプログラムになりません。

原因はプログラムの書き方ミスです。
「そんな書き方は できないよ?」な書き方をしている部分があるはずです。

コンパイラさんは優しいやつです。
文法エラーが発生すると「この部分が間違っているよ!」と教えてくれます。

文法エラー15

その部分を修正してあげてください。
文法エラーがなくなればコンパイルは成功するはずです。


image piyo2

一言でまとめるよ

まぁ「文法エラー」って単語が出てきたら「『プログラムの書き方が間違っているよ』エラーなんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像005
書籍画像066

おまけ

■訳してみるよ

「文法」は日本語ですね。
「error(エラー)」の意味は「誤り」とか「間違い」とか「過失」とかです。
何となく くっつけると

文法の誤り

となります。



■検索してみる?




書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本
エンジニア育成現場の「失敗」集めてみた。 42の失敗事例で学ぶマネジメントのうまい進めかた
ソフトウェア受託現場の「失敗」集めてみた。 42の失敗事例で学ぶ受託開発のうまい進めかた