| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 999 人关注过本帖
标题:指针问题
只看楼主 加入收藏
lixingxing52
Rank: 2
来 自:重庆
等 级:论坛游民
帖 子:31
专家分:33
注 册:2009-11-2
结帖率:91.67%
收藏
已结贴  问题点数:3 回复次数:12 
指针问题
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
void main()
{
    char *p,*q1,*q2;
    p=q1=q2=mallo(50);
    gets(p);
    for(;*p!='\0';p++)
        if (*p>=48 && *p<=57)
        {
            *q1=*p;
            q1++;
        }
        *q1='\0';
        puts(q2);
}
帮忙改下
搜索更多相关主题的帖子: 指针 
2009-11-22 14:59
xy4919961
Rank: 5Rank: 5
等 级:职业侠客
帖 子:199
专家分:362
注 册:2009-10-24
收藏
得分:0 
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
#include<ctype.h>
main()
{
  int i=0,j=0;
  char *p=NULL;
  char buffer[50];
  if(gets(buffer)==NULL)
   {
    printf("\nError reading string.\n");
         return 1;
   }
    p=(char *)malloc(strlen(buffer)+1);
     memset(p,'\0',strlen(buffer)+1);
     if(p==NULL)
      {
        printf("\n not of memory.");
            return 1;
      }
      while(i<strlen(buffer))
       {
         if(isdigit(buffer[i]))
          {
           p[j++]=buffer[i];
          }
        i++;
       }
      
     printf("%s\n",p);

      getch();
        return 0;
}

[ 本帖最后由 xy4919961 于 2009-11-22 16:27 编辑 ]

QQ群:96348241
2009-11-22 15:02
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
收藏
得分:0 
你想实现什么啊?不过注意下malloc~不是mallo
2009-11-22 15:44
lixingxing52
Rank: 2
来 自:重庆
等 级:论坛游民
帖 子:31
专家分:33
注 册:2009-11-2
收藏
得分:0 
想找出字符串中的数字并输出··

新手上路,请多帮助。谢谢!
2009-11-22 16:05
xy4919961
Rank: 5Rank: 5
等 级:职业侠客
帖 子:199
专家分:362
注 册:2009-10-24
收藏
得分:0 
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
void main()
{
    char *p,*q1,*q2;
    p=q1=q2=malloc(50);
    gets(p);
    for(;*p!='\0';p++)
        if (*p>='0' && *p<='9')
        {
            *q1=*p;
            q1++;
        }
        *q1='\0';
        puts(q2);
        getch();
         return 0;
}

QQ群:96348241
2009-11-22 16:23
zhuyunshen
Rank: 6Rank: 6
等 级:侠之大者
威 望:2
帖 子:212
专家分:455
注 册:2009-11-22
收藏
得分:0 
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
main()
{
  char *p=NULL;
  char buffer[50];
  if(gets(buffer)==NULL)
   {
    printf("\nError reading string.\n");

         return 1;
   }
    p=(char *)malloc(strlen(buffer)+1);
     if(p==NULL)
      {

        printf("\n not of memory.");

            return 1;
      }
        strcpy(p,buffer);

      printf("%s",p);

      getch();
        return 0;
}            
2009-11-22 16:27
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
收藏
得分:0 
那为什么输出q2呢?
2009-11-22 17:41
xy4919961
Rank: 5Rank: 5
等 级:职业侠客
帖 子:199
专家分:362
注 册:2009-10-24
收藏
得分:0 
我也一直在想这问题..q1输出没有东西。p也是 。
. 只有q2有数字....为啥捏.?

QQ群:96348241
2009-11-22 18:05
lixingxing52
Rank: 2
来 自:重庆
等 级:论坛游民
帖 子:31
专家分:33
注 册:2009-11-2
收藏
得分:0 
回复 4楼 lixingxing52
用VC++运行有错误啊··
--------------------Configuration: 从字符串中找数字并输出 - Win32 Debug--------------------
Compiling...
从字符串中找数字并输出.cpp
e:\c练习\课堂作业c++\从字符串中找数字并输出.cpp(7) : error C2440: '=' : cannot convert from 'void *' to 'char *'
        Conversion from 'void*' to pointer to non-'void' requires an explicit cast
Error executing cl.exe.

新手上路,请多帮助。谢谢!
2009-11-22 19:34
lixingxing52
Rank: 2
来 自:重庆
等 级:论坛游民
帖 子:31
专家分:33
注 册:2009-11-2
收藏
得分:0 
回复 6楼 zhuyunshen
p是原来的数组但是被覆盖了,Q1是在不停的移动,最后给了个\0  Q2一直没有动。。。仅仅是记住开始位置。。

新手上路,请多帮助。谢谢!
2009-11-22 19:39
快速回复:指针问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016777 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved