このページでは、コードを書いているとコンパイルエラーにぶつかりなかなか解決せず苦戦するといったことが無いように注意する点などについて解説します。
コードを書いているとどうしても忘れてしまい、後々困るといったことが慣れてきた今でもたまにあります。
そんな点についてお話しします。

コンパイルエラーとは
そもそもコンパイルとは、プログラミング言語で書かれたコードをコンピュータが理解できるように機械語に変換することです。
その際に、コードに間違いがあるとうまく機械語に変換できずエラーが発生してしまいます。その状態をコンパイルエラーと呼びます。
よくやるエラー原因代表例
注意しているつもりでもよくやってしまう代表的なエラー原因についていくつか挙げてみます。
スペルミス | 例)〇:iRSI(省略); ×:iRSL(省略); |
---|---|
セミコロン抜け | 例)〇:int num = 100; ×:int num = 100 |
コードブロックの不足 | 例)〇:if(条件式){コード;} ×:if(条件式){コード; |
全角スペースの存在 | 例)〇:int num = 100; ×:int num = 100; |
それぞれについて解説します。
スペルミス
コンパイルエラー時にこんな変数/関数は無いよとエラーを返してくれるのでエラー個所は比較的見つかりやすいです。
宣言されている変数や関数は、次回入力時に予測変換として表示されるので、それを使うようにすれば防げます。
セミコロン抜け
コード分の最後にはセミコロン「;」が必要です。
セミコロンを付け忘れると次の行で記述しているコードも、付け忘れのコードの続きと解釈され、間違った引数を指定していると判断されたりしてエラーとなります。
コンパイルエラー時は「セミコロン抜け」というエラー表示はしてくれません。
そのため、エラー個所がわかりづらいですが、エラーの前行を確認するようにすると見つけることが出来ます。
コードブロックの不足
if文やfor文を使うことで波カッコ{ }を使うことになりますが、こういった制御文を入れ子にして使うことが多々あります。
以下のようなコードです。
if(condition) { if(condition) { //コード分 } else { //コード分 } } else { //コード分 }
if文の中にif文を追加する例です。
この時にしっかりとコードブロックを正しく記述していないとエラーになります。
大量のコードが記述されてくると見つけるのも難しくなってきますので、if文やfor文を作る際には、中身のコードを書く前に先にコードブロックを記述するようにしましょう
全角スペースの存在
これは初めのうちは悩まされたことがあります。
コードを書く際にコメントを利用することが多いですが、その際に全角変換してコメントを入力後、戻し忘れてスペースを入力してしまうといったケースです。
半角スペースと全角スペースは一見判りづらいため、エラーの行はわかってるのに、どこも間違ってないと思ってしまうことがありました。
エラー防止策
エラー解決に時間を取られるくらいなら、コードのアイデアを考えたり、いくつもバックテストを取った方が有益です。
もちろんエラー解決による経験値も上がりますが、挫折にもつながりかねませんので、ケアレスミスは無くすようにして効率の良いプログラミングを行っていくことをお勧めします。
そのための防止策について2点お伝えします。
字下げの活用
先ほどの制御文の例を、字下げを使わなかった場合で記述してい見ます。
if(condition) { if(condition) { //コード分 } else { //コード分 } } else { //コード分 }
こうなるとこのコード自体が正しいのかどうかさえ分からなくなってしまいます。
エラーを引き起こす要因になりますので、しっかり字下げを活用するようにしましょう。
こまめにコンパイル
慣れないうちは1行追加するたびにコンパイルすることをお勧めします。
コンパイルと言ってもボタン一つで完了しますし、ファイルの保存感覚で出来るので何度やっても問題ありません。
むしろ、コードをいっぱい記述した後にコンパイルしてエラーが出ると、エラー個所を見つけるのも一苦労しますので、慣れたとしてもやっておいた方が良いです。
1行追加するごとにコンパイルすれば、どのコードにミスが含まれているのかがすぐわかりますので、コンパイルを癖づけて実行するようにしましょう。
コメント
コメント一覧 (37件)
https://pinupaz.top/# pin up casino
doctor-reviewed advice: modafinil 2025 – purchase Modafinil without prescription
best price for Viagra: best price for Viagra – same-day Viagra shipping
no doctor visit required: safe online pharmacy – Viagra without prescription
doctor-reviewed advice: purchase Modafinil without prescription – safe modafinil purchase
Viagra without prescription: trusted Viagra suppliers – legit Viagra online
legal Modafinil purchase: purchase Modafinil without prescription – legal Modafinil purchase
safe modafinil purchase: legal Modafinil purchase – legal Modafinil purchase
cheap Cialis online: cheap Cialis online – secure checkout ED drugs
online Cialis pharmacy: generic tadalafil – generic tadalafil
discreet shipping ED pills: generic tadalafil – Cialis without prescription
buy generic Cialis online: buy generic Cialis online – reliable online pharmacy Cialis
affordable ED medication: cheap Cialis online – best price Cialis tablets
Amo Health Care: amoxicillin 500mg capsule buy online – Amo Health Care
Amo Health Care: generic amoxicillin 500mg – Amo Health Care
where to buy amoxicillin 500mg: amoxicillin 500mg over the counter – rexall pharmacy amoxicillin 500mg
amoxicillin 875 125 mg tab: Amo Health Care – amoxicillin 500 tablet
PredniHealth: PredniHealth – PredniHealth
3wr7vd
amoxicillin for sale – amoxil price oral amoxicillin
purchase fluconazole generic – https://gpdifluca.com/ order fluconazole for sale
cenforce for sale – https://cenforcers.com/# order cenforce sale
cialis online reviews – https://ciltadgn.com/# tadalafil (exilar-sava healthcare) version of cialis] (rx) lowest price
cialis recommended dosage – https://strongtadafl.com/ sildalis sildenafil tadalafil
buy zantac medication – on this site order ranitidine 300mg generic
cheap viagra new zealand – https://strongvpls.com/ 50 mg viagra
Greetings! Jolly productive recommendation within this article! It’s the petty changes which choice make the largest changes. Thanks a lot towards sharing! https://buyfastonl.com/isotretinoin.html
This is the compassionate of writing I rightly appreciate. propecia libido
This is the type of delivery I unearth helpful. https://ursxdol.com/furosemide-diuretic/
This is the compassionate of writing I rightly appreciate. https://prohnrg.com/product/orlistat-pills-di/
I’ll certainly carry back to skim more. ordonnance pour cialis super active
With thanks. Loads of conception! https://ondactone.com/spironolactone/
This website absolutely has all of the tidings and facts I needed to this subject and didn’t comprehend who to ask.
buy inderal sale
I’ll certainly return to skim more. http://ledyardmachine.com/forum/User-Lzvpam
purchase dapagliflozin sale – https://janozin.com/ order forxiga without prescription
buy xenical sale – on this site purchase xenical
This website positively has all of the information and facts I needed about this thesis and didn’t positive who to ask. http://www.underworldralinwood.ca/forums/member.php?action=profile&uid=493451