c语言截取字符串问题!!!!

求助如何字符串,,中的'<' '>' ','去掉只留下数字存入int类型的数组中?谢谢!!!

判断当是哪些符号的下一个是数字的开始,读到某个特殊字符时结束此数字

 #include "stdafx.h"
#include <iostream>
using namespace std;

int main()
{
    char str1[]="1234<567>89";
    char *p,*p1;
    int len;
    len=strlen(str1)+1;
    p=new char[len];
    p1=p;
    for(int i=0;i<len;i++)
    {
        if(str1[i]!='<' && str1[i]!='>')
        {
            *p1=str1[i];
            p1++;
        }
    }
    cout<<p;

    delete []p;

    getchar();
    return 0;
}

修改了一下:

 #include "stdafx.h"
#include <iostream>
using namespace std;

int main()
{
    char str1[]="1234<567>89";
    int *p,*p1;
    int len,count;
    len=strlen(str1);
    p=new int[len+1];
    p1=p;
    count=0;
    for(int i=0;i<len;i++)
    {
        if(str1[i]!='<' && str1[i]!='>')
        {
            *p1=(int)(str1[i]-'0');
            p1++;
            count++;
        }
    }
    for(int i=0;i<count;i++)
    {
        cout<<p[i];
    }

    delete []p;

    getchar();
    return 0;
}

遇到这些字符,直接跳过,继续输入,转成int型存入。