从字符串中删除第一个和最后一个字符

迈克尔1995

任务应该很简单,删除第一个和最后一个字符。

https://www.codewars.com/kata/56bc28ad5bdaeb48760009b0/train/c

该函数获取两个参数(dst作为目标和src作为源),并且应该返回修改后的字符串并分配给dst指针(如果我理解正确的话)。

我的答案对我来说似乎是正确的,但这是我的问题:

当字符串的字符数超过9个时,修改后的字符串会带有一些符号。

char* remove_char(char* dst, const char* src){

  memmove(dst,src+1,strlen(src+1)-1);


  return dst;
}

在此先感谢您的帮助 :)

马克·博内利

执行此操作时:

memmove(dst,src+1,strlen(src+1)-1);

您正确地跳过了第一个和最后一个字符,但是最后得到的字符串没有NUL终止符(\0)。您应该在memmove之前或之后自行添加

size_t len = strlen(src) - 2;
memmove(dst, src + 1, len);
dst[len] = '\0';

当然,以上所有代码都假定dst已正确分配了这些代码,并且至少可以包含strlen(src) - 1字符,src并且至少2具有字符。

如果还要考虑src少于两个字符的边缘情况

size_t len = strlen(src);

if (len < 2) {
    *dst = '\0';
} else {
    memmove(dst, src + 1, len - 2);
    dst[len - 2] = '\0';
}

return dst;

注意:您可能必须#include <stddef.h>使用size_t

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Bash删除字符串中的第一个和最后一个字符

来自分类Dev

Bash删除字符串中的第一个和最后一个字符

来自分类Dev

字符串中第一个和最后一个字符的范围

来自分类Dev

返回范围,字符串中的第一个和最后一个字符

来自分类Dev

交换字符串中的最后一个和第一个字符

来自分类Dev

字符串中第一个和最后一个字符的范围

来自分类Dev

替换字符串中的第一个和最后一个字符(javascript)

来自分类Dev

如何使用`Util class`从长字符串中获取最后一个字符和第一个字符?

来自分类Dev

仅当字符串中的第一个或最后一个字符时,才从字符串中删除该字符。

来自分类Dev

仅当字符串中的第一个或最后一个字符时,才从字符串中删除该字符。

来自分类Dev

如何在Rust中删除字符串的第一个和最后一个字符?

来自分类Dev

如何从爆炸的PHP字符串中删除第一个和最后一个字符

来自分类Dev

如何从字符串中删除第一个和最后一个字母

来自分类Dev

字符串的第一个和最后一个字符

来自分类Dev

R从字符串中删除第一个字符

来自分类Dev

从字符串中删除第一个字符

来自分类Dev

从字符串中删除第一个字符

来自分类Dev

从字符串中删除第一个字符

来自分类Dev

在Oracle Server中删除字符串的第一个字符

来自分类Dev

从字符串Django模板中删除第一个字符

来自分类Dev

从字符串Django模板中删除第一个字符

来自分类Dev

删除O(1)中字符串的第一个字符

来自分类Dev

在 LotusScript 中删除字符串的第一个字符

来自分类Dev

Bash从字符串中剃除第一个和/或最后一个字符,但前提是该字符是某个特定字符

来自分类Dev

C#如何交换字符串中的第一个字符与最后一个字符

来自分类Dev

通过不仅删除第一个和最后一个字符来确定字符串是否为k回文

来自分类Dev

删除vba中的第一个和最后一个字符

来自分类Dev

从多个标题大小的第一个和最后一个字符中删除空格

来自分类Dev

如果每个字符串中的第一个字符相同,则从数组中的每个字符串中删除第一个字符

Related 相关文章

  1. 1

    Bash删除字符串中的第一个和最后一个字符

  2. 2

    Bash删除字符串中的第一个和最后一个字符

  3. 3

    字符串中第一个和最后一个字符的范围

  4. 4

    返回范围,字符串中的第一个和最后一个字符

  5. 5

    交换字符串中的最后一个和第一个字符

  6. 6

    字符串中第一个和最后一个字符的范围

  7. 7

    替换字符串中的第一个和最后一个字符(javascript)

  8. 8

    如何使用`Util class`从长字符串中获取最后一个字符和第一个字符?

  9. 9

    仅当字符串中的第一个或最后一个字符时,才从字符串中删除该字符。

  10. 10

    仅当字符串中的第一个或最后一个字符时,才从字符串中删除该字符。

  11. 11

    如何在Rust中删除字符串的第一个和最后一个字符?

  12. 12

    如何从爆炸的PHP字符串中删除第一个和最后一个字符

  13. 13

    如何从字符串中删除第一个和最后一个字母

  14. 14

    字符串的第一个和最后一个字符

  15. 15

    R从字符串中删除第一个字符

  16. 16

    从字符串中删除第一个字符

  17. 17

    从字符串中删除第一个字符

  18. 18

    从字符串中删除第一个字符

  19. 19

    在Oracle Server中删除字符串的第一个字符

  20. 20

    从字符串Django模板中删除第一个字符

  21. 21

    从字符串Django模板中删除第一个字符

  22. 22

    删除O(1)中字符串的第一个字符

  23. 23

    在 LotusScript 中删除字符串的第一个字符

  24. 24

    Bash从字符串中剃除第一个和/或最后一个字符,但前提是该字符是某个特定字符

  25. 25

    C#如何交换字符串中的第一个字符与最后一个字符

  26. 26

    通过不仅删除第一个和最后一个字符来确定字符串是否为k回文

  27. 27

    删除vba中的第一个和最后一个字符

  28. 28

    从多个标题大小的第一个和最后一个字符中删除空格

  29. 29

    如果每个字符串中的第一个字符相同,则从数组中的每个字符串中删除第一个字符

热门标签

归档