嘿伙计们,所以我正在努力做到以下几点:
我有一个表单的字符串,_实际上是空格。:
__ 1 _ __ _Multithreaded Programming ::通过线程提高性能
我想读取整数没有空格,然后读取字符串的剩余部分,包括将在字符串前面的空格。
我有以下代码:
while(fgets(line, MAX_STRINGS, stdin)){
sscanf(line, "%d %88[^\n]s", &num, string_value);
printf("%d + %s\n", num, string_value);
}
它读取整数并且它还读取字符串的其余部分(我对问题状态的要求是整个字符串包括整数不会超过88个字节)但是它忽略了字符串前面的所有空格我需要他们。我怎样才能保留白色空间?谢谢!
答案 0 :(得分:3)
删除%d和%88之间的空格。 sscanf
格式字符串中的空格表示“使用并丢弃所有空格”。