我有一个变量:char * tmp
,我做了几个操作。最后,我有这样的"fffff"
,但有时在fffff之前是"\n"
。我如何删除它?如何从char *中删除换行符?
3
A
回答
6
char *tmp = ...;
// the erase-remove idiom for a cstring
*std::remove(tmp, tmp+strlen(tmp), '\n') = '\0'; // removes _all_ new lines.
+0
你需要为此包括什么? – Splatmistro
+1
@Splatmistro'#include
1
如果tmp目录是动态分配记住释放它使用tmp
:
if (tmp[0] == '\n') {
tmp1 = &tmp[1];
}
else {
tmp1 = tmp;
}
// Use tmp1 from now on
4
在你的问题,你都在谈论这个字符串传递给一个插座。当将char *指针传递给像复制它的套接字时,执行此操作的代码非常简单。
在这种情况下,你可以这样做:
if (tmp[0] == '\n')
pass_string(tmp+1); // Passes pointer to after the newline
else
pass_string(tmp); // Passes pointer where it is
2
在C:
#include <string.h>
tmp[strcspn(tmp, "\n")] = '\0';
+0
这是一个C++的问题,而不是C –
相关问题
- 1. 如何从char数组中删除换行符?
- 2. 如何删除换行符
- 3. 如何从Dart中的字符串中删除换行符?
- 4. C++从char中删除子字符串
- 5. 如何从char []中删除元素?
- 6. 如何删除xslt中的换行符
- 7. 如何删除textmate中的换行符
- 8. 如何从unix文件中删除回车符和换行符
- 9. 如何从字符串中删除换行符?
- 10. 如何从字符串中删除换行符?
- 11. 如何从json字符串中删除多个换行符(\ n)?
- 12. 从记录中删除换行符
- 13. 删除换行符
- 14. 删除换行符
- 15. 如何从字符串中删除\ t char
- 16. 如何从Drupal 7中的H标记中删除换行符?
- 17. 如何从Highline库中的ask方法中删除换行符?
- 18. 从char字符串中删除新行C++
- 19. 如何从输出中删除换行符?
- 20. C#如何从二进制文件中删除换行符?
- 21. 如何从此代码中删除换行符?
- 22. 如何从双引号中删除换行符?
- 23. 如何从RSS提要中删除多个换行符?
- 24. 如何从URL中选择性删除换行符
- 25. 如何从java记录器api中删除换行符?
- 26. 如何从文本文件中删除换行符?
- 27. 如何从散列值中删除所有换行符?
- 28. 如何使用ultraedit删除换行符?
- 29. 如何删除所有换行符?
- 30. 如何删除隐形换行符
我认为最好的行动方针是防止它摆在首位到达那里。你能告诉我们一些描述你如何结束包含'\ n'的字符串的代码吗? – templatetypedef
如果是'C++',请考虑使用'std :: string'而不是'char *' –
搜索并替换。 'strchr','strpbrk'代表'char *','find_first_of'代表'std :: string'。拿你的选择。 – dirkgently