【发布时间】:2021-07-13 23:52:41
【问题描述】:
我正在练习并在互联网上找到了一些练习,它说我应该将str2复制到str1,也许主要问题是我应该只复制该字符串的某个索引(所以从str2[a]到str2[b])。因此应输入A 和B,以便将复制索引的范围缩小到str1。所以在这里我使用了函数方法来解决这个问题,但是出了点问题。所以我不明白为什么函数不起作用,一定是我的理解有很大的错误,或者我做错了。
#include <stdio.h>
#include <string.h>
#define N 50
void myfunction(char str1[], char str2[], int a, int b);
int main() {
char str1[N], str2[N];
int a, b;
printf("please input str1:");
gets(str1);
printf("please input str2:");
gets(str2);
printf("please input a and b:");
scanf("%d%d", &a, &b);
printf("str2=%s, str1=%s", str2, str1);
myfunction(str1, str2, a, b);
return 0;
}
void myfunction(char str1[], char str2[], int a, int b) {
int i, j;
for (i = a; i <= b; i++) {
str1 += str2[i];
}
}
【问题讨论】:
-
您不能使用
+=追加到数组。 -
“出了点问题”……也就是说?
-
mkrieger1,我的功能不起作用,所以我不知道哪里出错了。
标签: c substring c-strings function-definition