だから私は以下のこのビットのCコードを持っています. 入力ファイルからテキストをテストするステートメントを配置printf
すると、大量のジャンク値が得られることがわかります。具体的には、それらはアルファベットでも数値でもありません。疑問符が付いたひし形だと思います。これは、これらの値を本来あるべき方法で処理していないことを意味すると思います。入力ファイルには MIPS アセンブリ コードが少し含まれていますが、このコンテキストではテキスト ファイルのみです。プログラムの他のすべての部分をコメントアウトしましたが、この小さな部分が残っていますが、まだ悪い値が返されます。ここで何が間違っている可能性がありますか?
コンソールでプログラムを実行するために使用するコマンドは次のとおりです。
./アセンブラ -symbols adder.asm
Where ./assembler is the driver (argv[0])
-symbols is a tag used (argv[1])
adder.asm is the input file (argv[2])
したがって、一度開くと、このファイルからテキストを取得できるはずです。私が信じる限り、ファイルの問題ではありません。以前は機能していました。
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <stdbool.h>
FILE *fp;
FILE *fp_out;
void main(int argc, char* argv[])
{
int mode;
if (strcmp(argv[1], "-symbols") == 0)
{
fp = fopen(argv[2], "r");
mode = 1;
}
else
{
fp = fopen(argv[1], "r");
fp_out = fopen(argv[2], "w");
mode = 2;
}
}