繁体   English   中英

从文本文件读取说明

[英]Reading instructions from a text file

我需要阅读文本文件说明的帮助。 因此,例如:

假设这是我的文本文件:

一个38

s 20

10

10秒

“ a”代表加法,“ s”代表减法,用制表符分隔的数字是我要加或减的总数。 因此,我希望程序逐行读取此代码并执行指定的操作。

示例:如果我的总数从0开始,我希望程序在第一行中读取“ a tab 38”并在总数中加38,然后移至下一行并在第二行中读取“ s tab 20”并从总数中减去20。 等等等等。

我知道如何获取程序来读取文件,但是我不确定如何获取它来识别a / s,制表符和数字,然后继续对每一行进行处理。

任何帮助将不胜感激,因为我真的很困。

也许您可以尝试一下。 我没有正确检查代码,但这应该是代码行。 这是主要功能代码内。

FILE *fp;
char buff[255];
char numBuff[10];

int a;
int val = 0;
char op;
int len;

fp = fopen("/tmp/test.txt", "r");


while(fgets(buff, 255, file) != NULL){
    len = strlen(buff);
    strncpy (numBuff, buff+2, len-2);
    numBuff[len-2] = '\0';

    a = atoi(numBuff);

    if(buff[0] == 's'){
        val -= a;
    }else if(buff[0]=='a'){
        val += a;
    }
}

printf("%d",val);

使用fscanf(yourfileptr, "%c\\t%d", &instruction, &operand)获取指令和操作数。 那么您可以根据指令字符简单地增加或减少操作数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM