为了账号安全,请及时绑定邮箱和手机立即绑定

这个是把一个字符数组随机打乱的函数 但是strcpy那里的三行全错了为什么呢 求教啊大神

这个是把一个字符数组随机打乱的函数 但是strcpy那里的三行全错了为什么呢 求教啊大神

C
qq_白水_04341277 2016-11-27 16:07:59
void random(char s[]){    int index,i;    char temp[N];    srand(time(NULL));    for (i = 0; i<54; i++)    {        index = rand() % (54- i) + i;        if (index != i)        {            strcpy(temp,s[i]);            strcpy(s[i],s[index]);            strcpy(s[index],temp);        }    }}
查看完整描述

2 回答

?
onemoo

TA贡献883条经验 获得超454个赞

strcpy 函数是将第二个参数所指的字符串复制到第一个参数所指的位置,这两个参数要求都是 char 指针类型。

temp 作为参数没有错,但是 s[i] s[index] 所得到的都是 char 类型,与 strcpy 函数参数要求的类型不匹配。

如果你只是想调换字符串中单个字符的位置,可以直接复制移动单个字符啊,不要使用 strcpy 函数。

查看完整回答
反对 回复 2016-11-27
  • 2 回答
  • 0 关注
  • 1405 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信