C ++相当于fscanf()?
请不要说它是fscanf(); P
我正在尝试替换这一行:
if ( fscanf(fp, "P%c\n", &ch) != 1 )
如果我理解正确,它会尝试读入一个字符并将其存储到&ch,只要它在’P’和’\ n’之间。 是对的吗? 如果成功,它返回1(它读取的字符数)?
我正在尝试提出一个C ++版本。 有没有简单的方法来做这样的格式化读取? 或者我需要使用fstream,operator >>和嵌套的if语句吗?
带有类型检查的安全C ++替代方法是std :: stringstream 。
在Visual Studio中,安全但不可移植的等效函数是fscanf_s。
通常,为了便于移植,您可以使用其中一个流类,正如您所注意到的,正确格式化可能会很麻烦。