例如,我有这个字符串:
ABABcct
我可以复制吗
ABc
begin index = 2, end index = 4
...来自该字符串?
是否有任何特定的内置函数可以做到这一点?
我知道strncpy()
可以将字符串中从开头开始的多个字符复制到另一个字符串上。但我不认为它能做到我刚才描述的那样。据我所知,它的“开始索引”限制为0。
最佳答案
实际上,您可以将函数 strncpy()
与指向字符串中任意位置的指针结合使用,而不仅仅是指向字符串开头的指针。
示例:
char *src = strdup("ABABcct");
char *dest;
strncpy(dest, src + 2, 3) // Copies 3 characters from your pointer src + 2 to your pointer dest
如果运行此代码,dest
将包含 ABc
。
关于C 中能否将一个字符串的一部分复制到另一个字符串上?但复制的开始索引不为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48229899/