簡體   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