問題タブ [pascal]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
9134 参照

delphi - FreepascalでコンパイルされたDLLとDelphiでコンパイルされたEXEの間で文字列(PChar)を交換する

多くの実験の結果、FreePascalでコンパイルされたDLLのPCharをDelphiでコンパイルされたEXEと交換する方法を見つけました。私はDLLとEXEの両方のソースコードを担当していますが、一方はFreePascalに、もう一方はDelphiにある必要があります。私のソリューションには、DLLの次のメソッドが含まれます。

また、Delphi EXEから、GetAStringメソッドを呼び出すには、GetAStringメソッドを呼び出し、PCharを実際のDelphi文字列に保存して、FreeStringメソッドを呼び出す必要があります。

これは、FreePascalDLLからDelphiEXEを使用して文字列を交換するための最良の方法ですか?DelphiからFreeStringの呼び出しを回避できますか?

そして最後に、それが正しい解決策である場合、デフォルトでDelphi 2010とWideStringでどのように動作しますか?FreePascalでもWidePCharを強制する必要がありますか?

0 投票する
2 に答える
828 参照

date - Pascal での日付の解析

文字ごとに手動で解析するよりも、パスカルで日付を解析するより良い方法は何ですか?

日付はmm.dd.yyyy形式である必要があります。

0 投票する
1 に答える
255 参照

windows - オペラウィンドウを手前に!

クラス名を使用して、Opera のウィンドウを前面に表示する方法を教えてください。次の手順を使用して他のアプリケーションを前面に表示すると、正常に動作します。ウィンドウのキャプションではなく、クラス名のみを使用する必要があります。代わりにウィンドウ キャプションを使用すると、手順は機能します。手順は次のとおりです。

0 投票する
3 に答える
350 参照

delphi - 循環参照の修正?

次のように、別のユニットにPlayerクラスがあります。

私はまた、次のように別のユニットにワールドクラスを持っています:

プレーヤーがFWorldを介してワールドからデータを取得できるように、またワールド内の他のオブジェクトが同様の方法でプレーヤーデータを取得できるように、このようにしました。

ご覧のとおり、これは循環参照になります(したがって機能しません)。これは悪いコード設計を意味することを読みましたが、他の方法を考えることはできません。それを行うためのより良い方法は何でしょうか?

乾杯!

0 投票する
2 に答える
382 参照

pascal - パスカル単純型

標準パスカルでは、単純型と見なされるものは何ですか? 関数から返される型はこれらだけですか?

0 投票する
3 に答える
10244 参照

pascal - Pascal から Windows コマンド ラインを使用する

短い Pascal プログラム内からいくつかの Windows コマンド ライン ツールを使用しようとしています。簡単にするために、コマンド ライン文字列を引数として受け取り、プロセスの終了コード用の 1 つのフィールドとプロセスの出力テキスト用の 1 つのフィールドを持つ、ShellResult というレコード タイプを返す DoShell という関数を作成しています。

一部の標準ライブラリ関数が期待どおりに機能しないという大きな問題があります。DOS Exec() 関数は、私が渡したコマンドを実際には実行していません。コンパイラ モード {I-} を設定しない限り、Reset() プロシージャで実行時エラー RunError(2) が発生します。その場合、実行時エラーは発生しませんが、後でそのファイルで使用する Readln() 関数は実際には何も読み取らず、さらにコード実行のその時点以降に使用される Writeln() 関数も何もしません。

これまでの私のプログラムのソースコードです。私は Lazarus 0.9.28.2 beta と Free Pascal Compiler 2.24 を使用しています。

0 投票する
1 に答える
1140 参照

pascal - パスカルFCを学ぶ

Pascal FC のチャネルと rendesvouz メカニズムに関するチュートリアルと例を探しています。

0 投票する
1 に答える
1207 参照

pascal - パスカルの人年齢プログラム

私はこのタスクを持っていますが、それを行う方法がわかりません。私は人の年齢を日で見つける必要があり、生年月日と死亡日が与えられ、データファイルがあります:

結果ファイルは次のようになります。

注意すべき点はほとんどありません。2 月はすべて 28 日です。年齢を計算するための私の関数:

そこで何を変えるべきですか?ありがとう。

0 投票する
1 に答える
3293 参照

arrays - 配列のパスカル エラー

それの何が問題なのですか?範囲チェックエラーが発生し、それが何であるかわかりません。

0 投票する
3 に答える
1032 参照

arrays - Pascal - 数値形式が正しくありません

プログラム:

info.txt ファイル:

それのどこが悪いのか教えてください。19行目の数値形式が悪いと言っています。

に変更min, sek: integer;するとmin, sek: string;、動作します。私が理解しているように、文字列のように数値を読み取ります。なんていうか、今まで経験したことがありません。神よ、私は自分自身を撃ちます。