簡體   English   中英

當檢測到字符“ a”時,中斷while循環

[英]break a while loop when detect the character 'a'

我有一個文件讀取器,它逐行讀取文本文件(csv)...該方法工作正常。.我為每個';'使用字符串標記符 字符...當一行以字符'a'開頭時,我需要中斷第一個while循環。...我該怎么做?

   while(fgets(buffer, 1024, file) != NULL)
    {   
        if (cnt>0) {
            char *ch;
            ch = strtok(buffer, ";");
            while (ch != NULL) {
                printf("%s\n", ch);
                ch = strtok(NULL, ";");
            }
        }

    }

謝謝

馬克西姆

嘗試這個:

if(buffer[0] == 'a') break;
while(fgets(buffer, 1024, file) != NULL && buffer[0] != 'a')

我不確定這是否是您要的是否要在兩個while循環中執行此操作

while(fgets(buffer, 1024, file) != NULL)
{   
bool okToExit = false;
    if (cnt>0) {
        char *ch;
        ch = strtok(buffer, ";");
        while (ch != NULL) {
            printf("%s\n", ch);
            ch = strtok(NULL, ";");
            if(buffer[0] == 'a'){
                okToExit = true;
                break;
            }
        }
    }
if(okToExit) break;

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM