用C++输入字符串abcdefg和数字2,该函数将返回左旋转两位得到的结果cdefgab
时间: 2024-05-06 13:19:52 浏览: 52
C/C++字符串与数字互转的实现
```c
#include <stdio.h>
#include <string.h>
void left_rotate(char str[], int n) {
int len = strlen(str);
n %= len; // 防止 n 大于字符串长度
char temp[n];
strncpy(temp, str, n); // 复制前 n 个字符到 temp 数组中
memmove(str, str+n, len-n); // 将原字符串左移 n 个位置
strncpy(str+len-n, temp, n); // 将 temp 数组中的字符添加到原字符串末尾
}
int main() {
char str[] = "abcdefg";
int n = 2;
left_rotate(str, n);
printf("%s\n", str);
return 0;
}
```
阅读全文