【发布时间】:2014-11-30 08:41:37
【问题描述】:
string str;
cout << "Enter code\n";
getline(cin, str, '~');
//some loop i can't figure out
size_t nFPos = str.find('//');
size_t second = str.find('\n', nFPos);
size_t first = str.rfind('\n', nFPos);
str.erase(first, second - first);
//end unknown loop
输入
代码
//评论
//评论
代码~
输出
代码
//评论
代码
我一生都无法弄清楚我应该使用什么样的循环来删除所有以 // 开头的 cmets。它只是删除第一条评论并绕过其他所有内容。
我尝试过 for、while、do while 和 if
我想不通
【问题讨论】:
-
这里是通过cin读取变量输入的解决方案:stackoverflow.com/questions/201992/…
-
我可以给你循环,但是由于
//在代码中可能出现的问题是另一个问题,这里根本没有提到。 -
你到底在建什么,我回答了[你之前的问题](stackoverflow.com/questions/26199788/…),我认为它会有问题
-
@DigitalBrain 一个程序,用于读取用户的输入(代码),然后删除所有注释行、任何多余的空格(超过 1 个空格)并计算所有标记。然后显示编辑后的代码。
-
太好了,干得好
标签: c++ string loops comments erase