C 我有一个数组,我想把它传递到一个函数中,然后从函数中修改它,我该怎么做?

C 我有一个数组,我想把它传递到一个函数中,然后从函数中修改它,我该怎么做?,c,C,范例 //这是我的函数 void myfunc(定义看起来如何?) { int计数器=0; 用于(计数器=0;计数器

范例

//这是我的函数
void myfunc(定义看起来如何?)
{
int计数器=0;
用于(计数器=0;计数器<10;计数器++)
{
*arr[计数器]+=10;
}
内部主(空)
{
char arr[100]={'\0'};
myfunc(这看起来怎么样?)
返回0;
}

我想传入一个类似指针的东西,这样我就可以直接从
myfunc()

修改它。当数组传递给函数时,会传递指向第一个元素的指针

//This is my function
void myfunc (how does the definition look like?)
{
int counter = 0;
for (counter = 0; counter < 10; counter++)
{
*arr[counter] += 10;
}

int main(void)
{
char arr[100] = {'\0'};
myfunc (how does this look like?)
return 0;
}
void myfunc(char*arr){
整数计数器;
用于(计数器=0;计数器<10;计数器++){
arr[计数器]+=10;
}
}

将数组传递给函数时,将传递指向第一个元素的指针

//This is my function
void myfunc (how does the definition look like?)
{
int counter = 0;
for (counter = 0; counter < 10; counter++)
{
*arr[counter] += 10;
}

int main(void)
{
char arr[100] = {'\0'};
myfunc (how does this look like?)
return 0;
}
void myfunc(char*arr){
整数计数器;
用于(计数器=0;计数器<10;计数器++){
arr[计数器]+=10;
}
}
main
函数中,调用as

void myfunc (char *s)
main
函数中,调用as

void myfunc (char *s)

C不是一种面向对象的语言。您必须传入数组的大小,以便能够安全地对其进行迭代

myfunc (arr);
void myfunc(字符*arr,整数大小)
{
int计数器=0;
用于(计数器=0;计数器<大小;计数器++)
{
arr[计数器]+=10;
}
}
int main()
{
char arr[100]={'\0'};
myfunc(arr,100);
返回0;
}

C不是面向对象的语言。您必须传入数组的大小,以便能够安全地对其进行迭代

myfunc (arr);
void myfunc(字符*arr,整数大小)
{
int计数器=0;
用于(计数器=0;计数器<大小;计数器++)
{
arr[计数器]+=10;
}
}
int main()
{
char arr[100]={'\0'};
myfunc(arr,100);
返回0;
}

@tjjj;这是因为您正在解引用数组元素。
*arr[counter]+=10;
应该是
arr[counter]+=10;
@tjjjj;这是因为您正在解引用数组元素。
*arr[counter]+=10;
应该是
arr[counter]+=10;