gpt4 book ai didi

c - C 中的字符串截断

转载 作者:行者123 更新时间:2023-11-30 20:59:05 25 4
gpt4 key购买 nike

def slicing(string, integer):
original_str = string
if len(string) <= integer:
return 0
elif len(string) > integer:
string = string[:integer]
num = len(original_str) - len(string)
print(string)
return num

C中没有str[]切片函数吗?

最佳答案

C 中的字符串只是以 null 结尾的 char 数组,因此要从中间开始,您需要做的就是添加一个偏移量; str[x:] 就是 str + x

如果您不想一直走到字符串末尾,则需要复制您感兴趣的子字符串; POSIX 2008 中有一个 strndup() 函数,这使得这个过程变得很简单,只需 strndup(str, length) 即可。放在一起:

strndup(str + x, y);

我不确定 Windows 是否有 strndup,但如果没有,编写您自己的也很容易。如果您使用 glib,则可以使用 g_strndup 函数。

关于c - C 中的字符串截断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48555102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com