1. ホーム
  2. c

[解決済み] エラーです。関数の以前のプロトタイプがありません。なぜこのエラーが発生するのでしょうか?

2022-02-28 20:21:09

質問

// screen.h

#ifndef screen_h
#define screen_h

#define MAC  1
#define WIN  2
#define LNX  3

#ifdef PLATFORM 
# undef PLATFORM 
#endif

#define PLATFORM MAC

void screen_init();

#endif

// screen.c

#include <string.h>
#include <stdlib.h>

#include "screen.h"

#if PLATFORM == MAC

#include <curses.h> 

void screen_init(){
    erase();
}

#endif

なぜscreen.hにある私のプロトタイプが表示されないのか理解できません。

何かご提案・ヒントがありましたらお願いします。

解決方法は?

<ブロッククオート

ISO/iec 9899:TC2 - 6.2.1.2:
関数プロトタイプは、関数のパラメータの型を宣言したものである。

関数宣言の引数リストが空の場合、パラメータの数と型が不明であることを示します。関数が引数を取らないことを明示的に示すには、引数リスト上で void キーワードを使用します。そうでなければ、この関数宣言は有効なプロトタイプとしてカウントされません。

void screen_init(void);