gpt4 book ai didi

c - 通过指针对字符串进行冒泡排序

转载 作者:行者123 更新时间:2023-11-30 21:21:39 28 4
gpt4 key购买 nike

我正在修改我的编程概念,并遇到了这个通过指针排序字符串的程序

我收到以下错误:数组下标不是整数。这是我的代码:

                 #include <stdio.h>
#include <string.h>
int main()
{
char buffer[100];

char *p[10];
int n;

printf(" Input the number of strings");
scanf("%d \n",&n);

int i=0;
for(i=0;i<n;i++)
{
gets(buffer);
*p[i]=(char *)malloc(strlen[buffer]+1);
strcpy(*p[i],buffer);
}
char *temp;
for(i=0;i<n-1;i++)
{
if(strcmp(*p[i],*p[i+1])>0)
{
*temp=*p[i+1];
*p[i+1]=*p[i];
*p[i]=*temp;

}
}

最佳答案

 *p[i]=(char *)malloc(strlen[buffer]+1);
strcpy(*p[i],buffer);

应该是

 p[i]=malloc(strlen(buffer)+1);
strcpy(p[i],buffer);

或更短(使用 POSIX.1 中定义的函数):

 p[i]=strdup(buffer);

关于c - 通过指针对字符串进行冒泡排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22815737/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com