黑马程序员技术交流社区

标题: 关于指针数组的问题,请帮助查看下哪里有问题? [打印本页]

作者: 菜鸟de无奈    时间: 2014-3-22 15:58
标题: 关于指针数组的问题,请帮助查看下哪里有问题?
本帖最后由 菜鸟de无奈 于 2014-3-25 13:12 编辑

#include <stdio.h>

int main()
{
        char *p[6]; //定义指针数组
        
        
        for(int i = 0;i<6;i++) //将6个字符串保存在指针数组
        {
                printf("请输入第%d个字符串\n", i+1);
                scanf("%s", p);
               
        }
        
        printf("%s", *(p[2]));// 打印出输出的第3个字符串
        
        return 0;
               
}

作者: 周宇华    时间: 2014-3-22 16:28
改成这样试试:

  1. #include <stdio.h>

  2. int main()
  3. {
  4.     char p[6][16]; //定义指针数组
  5.    
  6.    
  7.     for(int i = 0;i<6;i++) //将6个字符串保存在指针数组
  8.     {
  9.         printf("请输入第%d个字符串\n", i+1);
  10.         scanf("%s", p[i]);
  11.         
  12.     }
  13.    
  14.     printf("%s", p[2]);// 打印出输出的第3个字符串
  15.    
  16.     return 0;
  17.    
  18. }
复制代码

作者: 陈志辉    时间: 2014-3-22 16:39
打印有问题,换成p[2],看看
作者: 脸皮猴    时间: 2014-3-22 16:40
本帖最后由 脸皮猴 于 2014-3-22 16:48 编辑
  1. </blockquote></div><div class="blockcode"><blockquote>
  2. #include <stdio.h>

  3. int main()
  4. {
  5.         char *p[6]; //定义指针数组
  6.         
  7.         
  8.         for(int i = 0;i<6;i++) //将6个字符串保存在指针数组
  9.         {
  10.                 printf("请输入第%d个字符串\n", i+1);
  11.                 p[i] = malloc( 10 );//这句程序意思是malloc函数申请10个字节的内存,返回一个指针赋值给p[i],p[i]才能接收字符串
  12.                 scanf("%s", p[i]);//p[i]是野指针,没有初始化所以会出错!指针必须要初始化。上面那句是初始化指针的一种方式
  13.                                         //起始初始化指针就是让指针具体指向哪里,你要自己要先设置好!才能用!
  14.                
  15.         }
  16.         
  17.         printf("%s", *(p[2]));// 打印出输出的第3个字符串
  18.         
  19.         return 0;
  20.                
  21. }
复制代码





作者: yaozeyang_2014    时间: 2014-3-22 18:40
脸皮猴 发表于 2014-3-22 16:40

printf("%s", *(p[2]));// 打印出输出的第3个字符串

我觉得这里的星号应该去掉吧
作者: 脸皮猴    时间: 2014-3-22 19:05
yaozeyang_2014 发表于 2014-3-22 18:40
printf("%s", *(p[2]));// 打印出输出的第3个字符串

我觉得这里的星号应该去掉吧 ...

哈哈·没注意下面的那个星号。星号要要去掉,确实要去掉·
作者: 菜鸟de无奈    时间: 2014-3-25 10:48
脸皮猴 发表于 2014-3-22 16:40

谢谢大猴指点。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2