【发布时间】:2011-09-06 12:08:22
【问题描述】:
在 C 中,如何复制带有开始和结束索引的字符串,以便只复制部分字符串(从开始索引到结束索引)?
这类似于“C 字符串复制”strcpy,但具有开始和结束索引。
【问题讨论】:
在 C 中,如何复制带有开始和结束索引的字符串,以便只复制部分字符串(从开始索引到结束索引)?
这类似于“C 字符串复制”strcpy,但具有开始和结束索引。
【问题讨论】:
使用strncpy
例如
strncpy(dest, src + beginIndex, endIndex - beginIndex);
这假设你已经
dest 足够大。endIndex 大于 beginIndex
beginIndex 小于 strlen(src)
endIndex 小于 strlen(src)
【讨论】:
"abc" 获取abc,您可以:strncpy(dest, src + 1, strlen(src) - 2);。这应该是公认的答案。
你检查过strncpy吗?
char * strncpy ( char * 目标, const char * 源, size_t num );
您必须意识到 begin 和 end 实际上定义了要从一个地方复制到另一个地方的 num 个字节。
【讨论】:
strncpy 是一个好的答案,几乎没有任何合理的问题。 stackoverflow.com/questions/2889421/…