C++截取一个指定字符前面的字符串

来源:百度知道 编辑:UC知道 时间:2024/05/30 09:06:28
比如:
TCHAR A=“D:\SDK_CP\Fighter\images”;
现在要截取倒数第一个“\”前面的字符串,应该怎么写
还有这个字符串是一个地址
我只是截取倒数第一个‘\’前面的字符,还有TCHAR A[]=“D:\SDK_CP\Fighter\images”;,上面写错了
第三种方法只能从正面数,第一种只是那个字符不要而已,都不行啊

#include <iostream.h>

int cmp(char *a,char b,int t)
{
int n=0;
for(int m=0;m!=t;m++,a++,n++)
{
while(*a&&*a!=b)
a++,n++;
}
return n-1;
}

void main()
{
char a[50],c;
int p;
cout<<"输入一个字符串:";
cin.getline(a,50);
cout<<"输入指定字符及它是第几个:";
cin>>c>>p;
p=cmp(a,c,p);
cout<<"截得的字符串为:\n";
for(int i=0;i<p;i++)
cout<<a[i];
cout<<endl;
}

注意:输入的字符串不可超过char a[50],c;语句中指定的长度50,如果想输入更长的,可以将50改大些,同时cin.getline(a,50);中的50也要改成相应的值。

char *pre=new char[10];
sscanf(A,"%s\\%*s",pre);
pre即为所求

先问你想干嘛?
如果是想要盘符号,那直接用API好了。