我觉得这是一个非常愚蠢的问题,但我似乎无法在任何地方找到答案!
是否可以从一个字符数组中获取一组字符?抛出一些伪代码:
char arry[20] = "hello world!";
char part[10] = arry[0-4];
printf(part);
输出:
hello
那么,我可以从这样的数组中获取一段字符,而无需循环并逐个字符地获取它们或转换为字符串,以便我可以使用 substr() 吗?
最佳答案
您可以使用memcpy
(或strncpy
)获取子字符串:
memcpy(part, arry + 5 /* Offset */, 3 /* Length */);
part[3] = 0; /* Add terminator */
在代码的另一方面,请注意,如果 str
包含不受信任的输入,则执行 printf(str)
可能会导致格式字符串漏洞。
关于c++ - 获取 char 数组的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4777207/