我有以下代码,这是一个更大的程序.我试图将一个int传递给一个函数,该函数将char数组的一部分(name [100])复制到另一个,直到达到某个字符,并更新int值.
#include <stdio.h>
void time_loop(int *a, char name[100], char *data, char until_char)
{
int c = 0;
while(name[*a] != until_char)
{
data[c] = name[*a];
a++;
c++;
}
a = a + 2;
}
int main()
{
int i = 3;
char name[100] = {' ', ' ', ' ', 'f', 'o', 'o', ':', '\0'};
char fill_this[15];
time_loop(&i, name, fill_this, ':');
printf("current char index: %d\n", i);
printf("the word is: %s", fill_this);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
目前代码运行直到它达到:
while(name[*a] != until_char)
Run Code Online (Sandbox Code Playgroud)
一段代码,访问*a时遇到问题.
我总是可以采取简单的方法,并将功能更改为: …