C语言问题求解,数组作参数传递地址

问题遇到的现象和发生背景

源程序是老师上课给的

问题相关代码

#include<stdio.h>
#include
using namespace std;
void sub(char b[]);
main()
{
char a[10]="hello";
sub(a);
cout<<a<<endl;
}
void sub(char b[])
{
b[]="world";
}

运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果

供参考:

#include <stdio.h>
#include <iostream>
using namespace std;
void sub(char b[]);
int main()
{
    char a[10]="hello";
    sub(a);
    cout<<a<<endl;
    
    return 0;
}
void sub(char b[])
{
    cout<<b<<endl;
}