簡體   English   中英

C++ 讀取字符串和字符

[英]C++ reading in strings and characters

大家好,我正在為我的 CS 課程做一個項目,但我不知道如何讀取我的部分數據文件。

63f7hj-9 22spaces L 這是否正確

我的數據文件由這行數據組成,我必須弄清楚如何讀取其中的一部分。 我必須讀入 63 並將其保存為整數,我不需要 f7hj-9。 我還需要讀入 22 個空格並將其保存為字符串,將 L 保存為字符。

短語“這是正確的”需要進入控制台。

所以我的問題是,我如何只讀取 63 並丟棄其余部分? 將短語“22 個空格”保存為字符串。 L 作為一個字符 而短語“這是正確的”作為一個字符串。

我是 C++ 的新手,我已經讓這個項目的一部分工作了,但我被困在這部分上。

感謝您的幫助。

從文件中讀取輸入並拆分行

63f7hj-9                      L Is this correct

將整數轉換為 63,忽略 7hj-9,然后讀取 space1 字符串中的 22 個空格,然后讀取字符 L 作為字符,字符串 str2 中的其余字符串“這是正確的”。
這是一個如何使用 fscanf(或 scanf)來實現這一點的示例。

  • %d 將讀取整數,因為它是整數的格式說明符

  • 接下來,我們需要忽略文件中的“f7hj-9”,因此只需按原樣寫入即可完成工作

  • 接下來我們需要讀取 22 個空格,因此 %22c 將讀取 22 個字符,而不管該字符是換行符還是空格(這里是 22 個空格)

  • 接下來我們需要讀取一個字符,以便 %c 將它存儲在 char c 中
  • 現在另一個 %*c 將忽略 L 之后的一個空格
  • 使用 %[^\\n]s 將讀取字符串的其余部分直到換行


Integer = 63
Spaces =                       End
Character = L
String = Is this correct


輸入:

  63f7hj-9 L 這是正確的嗎

輸出:

 Integer = 63 Spaces = End Character = L String = Is this correct

暫無
暫無

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

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