搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 问个关于C的问题
标题:
问个关于C的问题
只看楼主
yz1025
等 级:
蝙蝠侠
威 望:
6
帖 子:473
专家分:915
注 册:2012-10-26
第
21
楼
得分:0
要最终的效果有双引号...
谢谢~我倒是没想过这点~我再试试看~
不要投我
2013-03-15 23:53
yz1025
等 级:
蝙蝠侠
威 望:
6
帖 子:473
专家分:915
注 册:2012-10-26
第
22
楼
得分:0
经T版指点已经知道怎么控制上引号~但是空白符号还是无法克服~
难道这部分要在C里解决吗?再想深一点~不就VB的阶段就要先将资料路径做一番处理~
看是否有特殊符号要进行特殊处理?有更简单的方法吗?
不要投我
2013-03-18 14:34
yz1025
等 级:
蝙蝠侠
威 望:
6
帖 子:473
专家分:915
注 册:2012-10-26
第
23
楼
得分:0
其实也不必自找麻烦~动态生成BAT档~再去叫起来就行了~
这样就简单多了~
只是总感觉有东西不懂~不把它弄明白~心里总有个疙瘩在~
不要投我
2013-03-18 15:11
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
24
楼
得分:0
不可能有空格不行的啊,你把BASIC中生成的Shell()里面的字符串打印出来看看。
授人以渔,不授人以鱼。
2013-03-18 21:50
yz1025
等 级:
蝙蝠侠
威 望:
6
帖 子:473
专家分:915
注 册:2012-10-26
第
25
楼
得分:0
路径中本身带有空格~DOS系统又预设以空格为参数分隔符号~
这道关卡要怎突破~为啥BAT没这问题~怪事~
[
本帖最后由 yz1025 于 2013-3-19 10:01 编辑
]
不要投我
2013-03-19 09:57
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
26
楼
得分:0
你出来的双引号把空格括住
授人以渔,不授人以鱼。
2013-03-19 10:27
yz1025
等 级:
蝙蝠侠
威 望:
6
帖 子:473
专家分:915
注 册:2012-10-26
第
27
楼
得分:0
可是BAT也这样做就没这问题~空格是路径中必备的~总不能拿掉吧~
DOS又拿空格当分隔符号~所以此题无解~加上字符串要先转码~
实在太麻烦~等于前期VB要先去判断路径格式~再做处理再传给C~
想不通怎把空白接起来传给C又不会被DOS侦测到字符串里面有空白~
不然到C再后制~把相关参数全连接起来~一整个好麻烦~
用CString也会有这种问题吗?开别种工程~用其他main()来接~
不要投我
2013-03-19 15:55
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
28
楼
得分:0
我不知道你VB6中这个Shell()是什么机制,反正在VFP中没事。
授人以渔,不授人以鱼。
2013-03-19 16:04
yz1025
等 级:
蝙蝠侠
威 望:
6
帖 子:473
专家分:915
注 册:2012-10-26
第
29
楼
得分:0
这就是微软邪恶的地方~所有内定函式都没源码~你问我我也不知道它是什么机制~
只知道从结果来看~它是VB6和DOS之间的桥梁~
不要投我
2013-03-19 16:31
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
30
楼
得分:0
我不用VB,没办法帮你测试。照道理说,只要传入命令行的字符串是
a.exe "1 2 3" "a b c"
这样的就不会错,这里两项,分别被双引号括住,双引号中间有多少空格是没问题的。
收到的鲜花
yz1025
于
2013-03-19 17:07
送鲜花
10朵 附言:1.我很赞同~问题在VB函式~ 2.反正有替代方 ...
授人以渔,不授人以鱼。
2013-03-19 16:49
30
3/3页
1
2
3
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-400124-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 4.568730 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved