Tom*_*cký 0 c string stdin input scanf
我正在研究一个项目,我似乎无法弄清楚如何读取一个并不总是存在的int的字符串.
例如:我有2个变量
int argument = 0;
char instruction[16];
Run Code Online (Sandbox Code Playgroud)
在输入上是:
"string" 57
Run Code Online (Sandbox Code Playgroud)
我想把"字符串"放在指令中,把57放在参数中.我可以这样做
scanf("%s %d", instruction, &argument);
Run Code Online (Sandbox Code Playgroud)
问题是输入可以没有数字,即
"string"
Run Code Online (Sandbox Code Playgroud)
然后我想把"字符串"放在指令中,并将参数保持等于0.但程序期望"字符串"之后的数字,并且在它得到之前不会继续.
当我有两种不同类型的输入时,如何从stdin读取输入?我尝试了几种解决方案,但没有一种解决方案.
谢谢