love_qj 发表于 2020-3-5 23:55:40

关于指针数组输入问题

#include"stdio.h"
#include"string.h"

int main(void)
{
        char *p = {0};
        printf("Enter five strings : \n\n");
        for(int i = 0; i < 5; i++)
        {
                scanf("%s", p);
        }
        for(int i = 0; i < 4; i++)
        {
                for(int j = i + 1; j < 5; j++)
                {
                        if(strcmp(p, p) > 0)
                        {
                                char *temp = NULL;
                                temp = p;
                                p = p;
                                p = temp;
                        }
                }
        }
        printf("按从小到大的顺序为:\n");
        for(int i = 0; i < 5; i++)
        {
                puts(p);
        }
       
        printf("\n");
       
        return 0;
}

为什么不能够换行输入字符串

ba21 发表于 2020-3-6 00:49:14

数组指针你是有了。
数组里面你存放的的地址哪里来?不可能凭空就有了吧。
            p = (char *)malloc(sizeof(char)*100);
                scanf("%s", p);

love_qj 发表于 2020-3-6 12:09:28

ba21 发表于 2020-3-6 00:49
数组指针你是有了。
数组里面你存放的的地址哪里来?不可能凭空就有了吧。
            p = (char *)mall ...

谢谢
页: [1]
查看完整版本: 关于指针数组输入问题