前提・実現したいこと
c言語の勉強をしています。#ifndef, #endifの役割を調べたところ「多重インクルードによるエラーを防ぐ」とのことでした。理解を深めるために,「多重インクルードによるエラー」を発生させようと試みています.
(エラー発生➡#ifndef, #endifを用いエラーを解決, という道筋を考えています。)
試したこと
c
1/* main.c */ 2#include"pi.h" 3#include"pi.h" 4 5int main(){ 6 return 0; 7}
c
1/* pi.h */ 2#define PI 3
発生している問題
上記のコードではエラーが出ることなく,コンパイルできてしまいます.
質問内容
- 上記のコードでは2重にpi.hがインクルードされていると思うですが,なぜエラーが出ないのしょうか?
- 「多重インクルードによるエラー」を確認できる例はありますでしょうか?
見当違いの質問をしているかもしれませんが,どなたかご教授いただければ幸いです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。