我正在学习指针。这段代码产生了运行时错误。
我正在尝试使用指向char的指针在char数组中插入字符串。

#include<stdio.h>
#include<string.h>
int main()
{
    char *a[10];
    strcpy(*a,"foo");
}

最佳答案

您已将a声明为10个指向char的指针的数组。
我认为您的意思是声明一个10个字符的数组。

char a[10];


更改声明还意味着您需要将调用更改为strcpy

strcpy(a,"foo");


该程序现在如下所示:

#include<stdio.h>
#include<string.h>
int main()
{
    char a[10];
    strcpy(a,"foo");
}

关于c - 为什么Strcpy函数不能与指向数组的指针一起使用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45351605/

10-10 18:24
查看更多