A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

想要实现从键盘输入多个字符串,为什么用二维数组可以实现,但是用字符串指针不能实现?

//1.用二维数组实现
char str[3][20];
    printf("请输入字符串:\n");
    for (int i=0; i<3; i++) {
        scanf("%s",str[i]);
    }

//2.用字符串指针实现如下
char *str[3]
printf("请输入字符串:\n");
for (int i=0; i<3; i++) {
        scanf("%s",str[i]);
    }

第一种方法中的str[i]存储的是第i行元素的首地址,第二种方法中的str[i]指向的是第i个字符串的首地址,但是用第一种方法可以把字符串保存到二维数组中,但是用第二种方法会报错,为什么呢?

2 个回复

倒序浏览
问题都没看懂。。。。貌似很难啊
回复 使用道具 举报
还有别的函数吧?比如gets()神马的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马