注册
登录
论坛
搜索
社区银行
帮助
导航
私人消息 (0)
公共消息 (0)
系统消息 (0)
好友消息 (0)
帖子消息 (0)
黑色海岸线论坛
»
网络安全
» [讨论]一个非常简单的C问题
返回列表
发帖
无条件为你
该用户已被删除
楼主
跳转到
»
倒序看帖
打印
字体大小:
t
T
无条件为你
发表于 2006-4-22 10:58
|
显示全部帖子
[讨论]一个非常简单的C问题
写一个子程序,传递给他一个完整的文件名,比如“C:\123\456\852\789\mwy.exe”,函数返回值为:mwy.exe
再如,传给他一个参数“D:\fafa\rfvjalkf\farfdqa\f.exe”,返回:f.exe
言下之意,就是去掉路径后的文件名。有几种方法实现?越简越好!
收藏
分享
无条件为你
该用户已被删除
沙发
无条件为你
发表于 2006-4-23 02:32
|
显示全部帖子
[讨论]一个非常简单的C问题
感谢楼上的朋友提供,我贴出我的方法: char *mm(char *p) { int i=strlen(strstr(strrev(p),"\\")); return strrev(p)+i; } 这个子程序的最大优点是调用后不破坏原串,调用这个子程序就可以了,例如可以这样调用: void main() { char f[100]="C:\\jf;a\\ecgas\\rea\\456.exe"; cout<
TOP
无条件为你
该用户已被删除
板凳
无条件为你
发表于 2006-4-23 02:46
|
显示全部帖子
[讨论]一个非常简单的C问题
2楼的朋友,你的程序我又细看了一下,发现两点错误:
第一:第二行应该用“ ';\\'; ”,不应该写成“ ';\'; ”,因为“ \'; ”表示另一个转义字符。
第二:strcpy(filename,(str+i));这句错了,应该改为:strcpy(filename,(str+i+1));
您写程序有点过于马虎了,可能是太匆忙吧,不过你的算法思路我是看明白了,重要的是思路,呵呵,再次谢谢您!
TOP
无条件为你
该用户已被删除
地板
无条件为你
发表于 2006-5-2 17:52
|
显示全部帖子
[讨论]一个非常简单的C问题
楼上的两位朋友,如果看得起小弟,不妨加我的QQ335342。我已经很少在此坛发主题贴了。
感谢楼上的朋友读我的贴子,我不会汇编,所以注定永远只是一个网络新手,您称我为“超级高手”是不是在讽刺我啊?我在另一个论坛发了一个EXE文件就被人反汇编解出了源代码的核心程序段。惭愧啊……
TOP
返回列表
回复
发帖
灌水乐园
使用交流
网络安全
网络技术
娱乐休闲
灌水乐园
文学天地
美图欣赏
网站办公
站务处理
[收藏此主题]
[关注此主题的新回复]
[通过 QQ、MSN 分享给朋友]