• ベストアンサー

決まった時刻にコンパイルエラーになる

20年位前ですが、PC98FAでコンパイル(たしかポーランドC?)していましたが、半数以上の確率で17:00頃になるとコンパイルエラーが発生し、その後やり直すとエラーが取れた思い出があります。電力会社の電圧が大きく変化する時刻?だと解釈していましたが、そのような事はありえたのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • fuji1
  • ベストアンサー率29% (109/371)
回答No.2

FA機の場合、外部接続機器からの割り込みでメモリが減少することがあります。 当時のコンパイラは、メモリをスワップするとかできなかったので、こんなことしか原因が思い浮かばないですね。 少なくとも、コンパイル時のエラーではありますが、環境の問題でしょう。

zenitamae
質問者

お礼

回答ありがとうございます。実際はパソコン側担当ではなかったので、横で見ていた感想です。不思議だなと思って見ていました。しかしEDIT、コンパイル、リンク、フロッピーにexeをコピー、パソコンの立ち上げ直してフロッピーソフトを実行、を繰り返していたのでメモリ減少も無いのでは?今では思い出ででしかありません。

zenitamae
質問者

補足

当時は、エディタの都合でソースの行数がたしか数百行しかまかなえず、他のソースをincludeしまくっていました。17:00頃になると社会一般の工場等の電源が落ちるので、電圧が不安定になるせいかなと想像していました。メモリ減少が原因説は、おっしゃる通りかも知れません。

その他の回答 (1)

  • mapponew
  • ベストアンサー率22% (309/1373)
回答No.1

コンパイル‐エラー【compile error】 コンパイラーでソースプログラムを機械語に変換する際に生じるエラーのことで、プログラム言語の記述や文法の誤りが原因となることが殆どです。 ですから、電圧とは関係ないと思います。

参考URL:
http://www.mech.tohoku-gakuin.ac.jp/rde/contents/course/computer/cerrors.html
zenitamae
質問者

お礼

回答ありがとうございます。毎日定時前にエラーになるので、不思議だった感覚を持ってしまった可能性もあります。

関連するQ&A

  • コンパイルエラー「include ファイルを開けません」

    あるプログラムをコンパイルしたところ、 下記コンパイルエラーが発生しました。 ヘッダファイルが開けないようなのですが、 これは自分の開発環境に必要なファイルが足りないのでしょうか? 解決する方法が分からないので、ご存知の方おられましたら ご教示お願い致します。 環境はVC++2005でフルインストールしています。 fatal error C1083: include ファイルを開けません。'WtsApi32.h': No such file or directory

  • VC++ のコンパイルエラーについて

    現在、解説書に記載されているコードをVC++でコンパイルできるか試しながらC++を独習中です。エラーの原因と対応が分からず困っております。どなかたご教示よろしくお願いします。 日付を表示するプログラムで米国表示か英国表示にするか列挙型の宣言と静的メンバーをヘッダーファイルに記載し、フラッグの定義と初期化をするプログラムをコンパイルしました。 ---クラス定義(ファイル名:date.h)--- #include <iostream.h> class date{ ----------------------- enum Lang {USA, UK}; static Lang format; public: ----------------------- }; ---メンバー関数定義(ファイル名:date.cpp)--- #include <string.h> #include <ctype.h> #include <stdlib.h> #include "date.h" ----------------------- Lang date::format = USA; ----------------------- ---------------------------------------- このファイルをコンパイルした結果、下記のエラーメッセージが表示されました。 エラー発生箇所は上記「Lang date::format = USA;」でした --------------------構成: date - Win32 Debug-------------------- コンパイル中... date.cpp date.cpp(17) : error C2501: 'Lang' : 識別名を宣言するのに、型が指定されていません。 date.cpp(17) : error C2239: 無効なトークン 'tag::id' が 'Lang' の宣言の後にあらわれました。 date.cpp(17) : error C2321: 構文エラー : 予期しない 'date::format' です。 cl.exe の実行エラー date.obj - エラー 3、警告 0 ----------------------------------------------------------------------------- エラーの原因と解決方法が分かりません。 よろしくお願いします。

  • C言語、コンパイルエラーの原因?

    いつも大変お世話になり誠にありがとうございます。 標記の件。 shift jifでコンパイルしているのですが コンパイルエラーが発生します。 下記にコードとエラーメッセージを書きます。 コード #include <stdio.h> int main(void) { printf("8進数101の文字コードをもつ文字は%cです。\n", '\101'); printf("16進数61の文字コードをもつ文字は%cです。\n", '\x61');      return 0; } コンパイルエラー gcc text4.c -o text4 text4.c: In function 'main': text4.c:7:1: error: stray '\201' in program    ^ text4.c:7:2: error: stray '@' in program    ^ text4.c:7:3: error: stray '\201' in program    ^ text4.c:7:4: error: stray '@' in program    ^ text4.c:8:1: error: stray '\201' in program   return 0; ^ text4.c:8:2: error: stray '@' in program   return 0; ^ text4.c:8:3: error: stray '\201' in program   return 0; ^ text4.c:8:4: error: stray '@' in program   return 0; 上記のようになります。 どうすればいいでしょうか? ご多忙中申し訳ございません。 ご回答の程宜しくお願い申し上げます。           高橋耕造

  • フレンド関数を利用したオーバーロードでコンパイルエラー

    独習C++(第3版)で学習していますが、書籍通りに入力してもコンパイルエラーが出てしまい、困っております。 P.199 6.5.フレンド演算子関数の使用にあるソースコードをそのままコピーしただけです。 フレンド関数を利用し、演算子オーバーロードをすると、コンパイルエラーが発生してしまうようです。 (10): friend coord operator+(coord ob1,int i); C:\jsp\tools\samp13\XXXX.cpp(10) : fatal error C1001: 内部コンパイラ エラー (コンパイラ ファイル 'msc1.cpp', 行番号 1786) Visual C++ のサポート情報 コマンドを選択してください ヘルプ メニュー、 またはサポート情報のヘルプ ファイルを参照してください 少し検索したところVC++6.0だとバグで起こってしまうとのことですが、この状態からコンパイルエラーを無くすには何をしたらよいのでしょうか?

  • BIND-9.6.1-P1でコンパイルエラー

    先日、BINDでセキュリティの脆弱性が発見されたため、バージョンアップを行おうと、BIND-9.6.1-P1のsourceをISCからDownloadしてきました。で、展開後に./configure、makeとしたところ、lib/dns/genを作成するところで、Segmentation違反(signal 11)でエラーが発生し、コンパイルが完了できませんでした。 以前、正しくコンパイルされたはずのBIND-9.5.0-P1を改めてコンパイルしてみたところ、こちらも同じ場所でエラーになります。調べてみたところ、コンパイルだけなら問題なく実行されるのですが、ldを使用してリンクする箇所にくると、エラーとなってしまうようです。(gen moduleを以前、コンパイルしたもので置いて強制的に先に進めたところ、次のリンクで同様にエラー・・・) ldが壊れたのかと思い、Hello,C world!をコンパイルしてみたところ、問題なく実行moduleが生成されます。じゃあ、ライブラリが壊れているのかと思い、rpm -qsコマンドで、以下のパッケージを検査しましたが、問題ない(通常)と返って来ます。 rpm -qs binutils-2.15.92.0.2-5vl2 rpm -qs glibc-2.3.4-2vl3 環境はVineLinux4.2、カーネル版数は2.6.16-0vl68を使用しています。これ以上、調べる対象が思いつかず、なにかヒントだけでも頂けないでしょうか。(ちなみに、BINDの脆弱性は、仕方なく対処版のrpmを持ってきてインストール。問題なく動作しています)

  • コンパイル

    Javaのコンパイルが通らず悩んでいます。よい解決方法がありましたら、教えてください。 早速ですが、*.javaでコンパイルするとエラーが出ず、Hoge.javaの様にファイル名を指定すると『シンボルを見つけられません。』と、コンパイルエラーが発生してしまいます。 まず環境ですが、WindowsXP Pro SP3 で、Javaのバージョンは   C:\com\st\sample\scr>java -version   java version "1.5.0_10"   Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_10-b03)   Java HotSpot(TM) Client VM (build 1.5.0_10-b03, mixed mode, sharing) で、CLASSPATHは、   CLASSPATH=.;.\WEB-INF\classes;.\WEB-INF\lib\struts-core-1.3.8.jar;C:\Tomcat5.5\common\lib\servlet-api.jar;C:\Java\JRE1.5.0\lib\ext\QTJava.zip となってます。 実際には、 C:\com\st\sample\srcというフォルダーがあります。その中にはSampleServlet.javaとSampleBean.javaとSampleBean.classの3つのファイルがあります。 SampleServlet.javaとSampleBean.javaはパッケージ管理するよう    package com.st.sample.src; を記述してあり、SampleServlet.javaには   import com.st.sample.src.*; も記述してあります。 そこで、   C:\com\st\sample\src>javac *.java を実行すると、コンパイルエラーは出ずに2つのclassファイルが作成されます。 しかし、個別に   C:\com\st\sample\src>javac SampleBean.java を実行するとコンパイルエラーは出ないものの、   C:\com\st\sample\src>javac SampleServlet.java を実行すると、   SampleServlet.java:24: シンボルを見つけられません。   シンボル: クラス SampleBean   場所 : com.st.sample.src.SampleServlet の クラス    SampleBean sb = new SampleBean();    ^   SampleServlet.java:24: シンボルを見つけられません。   シンボル: クラス SampleBean   場所 : com.st.sample.src.SampleServlet の クラス    SampleBean sb = new SampleBean();    ^ というエラーが発生してしまいます。 *.javaだと問題なくコンパイルが通り、ファイル名を指定するとコンパイル通らないのでしょうか?設定が不足しているのでしょうか?ご存知でしたら、何かアドバイスを頂けないでしょうか。御願い致します。

    • ベストアンサー
    • Java
  • コンパイルエラー

    //test.cpp #include<iostream> #include<string> class test { string hoge; public: test(string str); void method() const; } 14行目  test::test(string str) : test(hoge){} void test::method() const { std::cout << "test" << std::endl; } int main() { string s; std::cout << "名前を入力してください。" << std::endl; std::cin >> s; test aaa(s); aaa.method(); } コンパイルしようとすると下記エラーになります。 エラー E2303 test.cpp 7: 型名が必要 エラー E2139 test.cpp 7: 宣言に ; がない エラー E2293 test.cpp 10: ) が必要 エラー E2147 test.cpp 14: 引数宣言は 'string' で始められない エラー E2111 test.cpp 14: ここでは型 'test' は定義できない エラー E2136 test.cpp 14: コンストラクタには戻り型は指定できない エラー E2316 test.cpp 14: 'test::test(int)' は 'test' のメンバーではない エラー E2451 test.cpp 22: 未定義のシンボル string(関数 main() ) エラー E2379 test.cpp 22: ステートメントにセミコロン(;)がない(関数 main() ) エラー E2451 test.cpp 24: 未定義のシンボル s(関数 main() ) *** 10 errors in Compile *** ■1.型名が必要 →string hoge;と宣言してる箇所でエラー発生。 …stringと宣言してるのになぜでしょうか… ■2.宣言に";"がない →string hoge;と宣言してる箇所でエラー発生。 …";"つけてるのですが… ■3.")"が必要 →test(string str);の行でエラー発生。 …")"はどこで必要なのでしょうか ■4.引数宣言はstringでははじめられない →test::test(string str) : test(hoge){}の行でエラー発生。 …C++って引数をstringで受け取れない…?どういうことでしょうか などなど疑問がいっぱいあるのですが、どこが間違っているのかよくわかりません…ご指導よろしくお願いします。

  • セグメントエラー

    Cプログラムを実行した時に発生する、セグメントエラー は何が原因なのでしょうか? コンパイルはちゃんとととっているのに、 なぜエラーがでるのでしょうか? C言語の本を見たのですが、 のってません。 お願いします。

  • コンパイルの仕方が分かりません。

    とあるC言語で書かれたプログラムのコンパイルをしたいと思っているのですが、うまくいかないので質問させて頂きました。 環境はwindowsです コンパイラは bcc developer という Borland C++ Compiler をGUIで使える簡易IDEを使っているので Borland C++ Compilerと考えてください。VC++での方法でも大丈夫です コンパイルの仕方を検索するとハローワールドレベルのプログラムのコンパイル方法ばかりがでてきてしまいます。ですが、私がしようとしているのはオープンソースの他の方が書かれたものをダウンロードしてきてコンパイルするということなのです。 main関数が存在するファイルを発見し、「ここから全てのファイルがincludeされているんだろうからこれ一つをプロジェクトに加えてコンパイルすればいいのだろう」と考えてコンパイルすると関数の未定義エラーが大量に発生しました。 かといって全てのファイルをプロジェクトに追加するとなると量がとても多いのでかなり大変そうです。大変なのはいいのですが本当に皆さんがそんな方法でやっているのかも分からないし、それでやってもうまくいかないような気がします。 win32APIを使用している部分があったのでwinwosアプリケーションモードでコンパイルしてもやはりダメです。そもそも未定義エラーが出ているのはそれとは関係のないと思われる関数です。 調べてみるとインクルードパスに追加して・・などという記述をインターネットで発見したのですがこの辺りもよく分かりません。 とにかく、ディレクトリ階層が複雑になっている規模のおおきなプログラムのコンパイルの手順が分からないのでこのあたりについてお教え頂きたいです。 よろしくお願いします。

  • コンパイルエラーが理解できません

    初心者ですお教えください。 下記ソースをMicrosoft eMbedded Visual C++ でコンパイルしましたがコンパイルエラーが出て 理解できませんどなたかお教えください。 STANDARDSDK Win32 (WCE x86)Debug STANDARDSDK Emulator -------------------------------------------------- #include "windows.h" int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { SYSTEMTIME tm; char s[80]; int iRet; // 現在時刻を取得します。 GetLocalTime(&tm); // 表示する文字列を設定します。 if ((tm.wHour >= 0) && (tm.wHour < 12)) { lstrcpy(s, "おはです。"); } else if (tm.wHour < 17) { lstrcpy(s, "こんちは。"); } else { lstrcpy(s, "こんば。"); } // メッセージボックスに文字列を表示します。 iRet = MessageBox(NULL, s, "MsgBox", MB_OK); // 正常終了を意味する戻り値を返します。 return 0; } <コンパイルエラー内容です> プロジェクト 'MsgMain - Win32 (WCE x86) Debug' 用の中間ファイルおよび出力ファイルを削除しています。 --------------------構成 : MsgMain - Win32 (WCE x86) Debug-------------------- コンパイル中... MsgMain.cpp C:\Documents and Settings\中野\デスクトップ\MsgMain.cpp(7) : error C2731: 'WinMain' : function cannot be overloaded C:\Documents and Settings\中野\デスクトップ\MsgMain.cpp(3) : see declaration of 'WinMain' C:\Documents and Settings\中野\デスクトップ\MsgMain.cpp(17) : error C2664: 'wcscpy' : cannot convert parameter 1 from 'char [80]' to 'unsigned short *' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast C:\Documents and Settings\中野\デスクトップ\MsgMain.cpp(19) : error C2664: 'wcscpy' : cannot convert parameter 1 from 'char [80]' to 'unsigned short *' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast C:\Documents and Settings\中野\デスクトップ\MsgMain.cpp(21) : error C2664: 'wcscpy' : cannot convert parameter 1 from 'char [80]' to 'unsigned short *' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast C:\Documents and Settings\中野\デスクトップ\MsgMain.cpp(25) : error C2664: 'MessageBoxW' : cannot convert parameter 2 from 'char [80]' to 'const unsigned short *' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast cl.exe の実行エラー MsgMain.exe - エラー 5、警告 0 以上です宜しくお願いします。