私はPythonが初めてで、何かを理解しようとしています。私が書いた C コードのパラメーター テストを実行する簡単なスクリプトを作成しようとしています。
C コードを実行するために subprocess.call を使用しようとすると、問題が発生します。C コードには、コード自体で開かれるファイルの名前である引数が 1 つあります。
例えば:
filename = myclass.path + myclass.inputname
subprocess.call(["./code", filename])
これによりコードが実行され、正しいファイル名が渡されますが、C コードはファイルから情報をまったく読み取りません。次のようなものを渡すと:
./code "filename"
ここで、「ファイル名」は、Pythonでprintコマンドを使用したときに実際に出力されるものであり、問題なく動作します。
完全を期すために、私の C コード内で関連する行を以下に示します。
in = fopen(argv[1], "r");
fscanf(in, "%s %d %d", variable1, &variable2, &variable3);
何が起こっているのですか?