在C语言中,没有内置的 right() 函数来截取字符串的右侧部分。但是,你可以使用标准库函数 字符串复制函数strncpy() 来实现类似的功能。
strncpy() 函数可以从源字符串复制指定数量的字符到目标字符串。你可以将源字符串的长度设为所需截取的长度,然后将目标字符串指向源字符串的右侧部分。
下面是一个示例代码,演示如何使用 strncpy() 函数截取字符串的右侧部分:
c复制代码
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello, World!";
int length = 5; // 截取的长度
char result[length + 1]; // 目标字符串,长度加1用于存储结束符'\0'
strncpy(result, str + strlen(str) - length, length);
result[length] = '\0'; // 添加结束符'\0'
printf("Rightmost %d characters: %s\n", length, result);
return 0;
}
在上面的示例中,我们定义了一个源字符串 str 和一个目标字符串 result。然后,我们使用 strlen() 函数计算源字符串的长度,并将结果减去要截取的长度,得到从右侧开始截取的位置。接下来,我们使用 strncpy() 函数从该位置开始复制指定长度的字符到目标字符串中。最后,我们添加一个结束符 '\0' 来标记字符串的结尾,并打印结果。
请注意,在使用 strncpy() 函数时,要确保目标字符串有足够的空间来存储复制的字符和结束符 '\0'。否则,可能会导致缓冲区溢出和未定义的行为。