首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用fout ()

如何使用fout ()
EN

Stack Overflow用户
提问于 2011-04-08 03:51:48
回答 1查看 2.5K关注 0票数 2

有人能帮我创建这个命令吗?

代码语言:javascript
复制
fout <<"osql -Ubatascan -Pdtsbsd12345 -dpos -i""c:\\temp_pd.sql"""<<endl;

结果输出

代码语言:javascript
复制
osql -Ubatascan -Pdtsbsd12345 -dpos -ic:\temp_pd.sql

我想要的输出

代码语言:javascript
复制
osql -Ubatascan -Pdtsbsd12345 -dpos -i"c:\temp_pd.sql"

有人能帮忙吗?

EN

回答 1

Stack Overflow用户

发布于 2011-04-08 04:06:01

实际上,您要做的是在彼此之间编写多个字符串文本。表达式

代码语言:javascript
复制
"foo""bar"

获取解析为两个字符串文本"foo""bar"。C语言和C++语言说,当字符串文本相邻时,它们在编译时被粘贴到一个大字符串文本中。因此,上面的表达式完全等价于单个字符串文本"foobar"

因此,表达式被解析为以下三个字符串文本:

代码语言:javascript
复制
"osql -Udatascan -Pdtsbsd7188228 -dpos -i"
"c:\\temp_pd.sql"
""

当粘贴到一起时,形成字符串"osql -Udatascan -Pdtsbsd7188228 -dpos -ic:\\temp_pd.sql" (note that the third string is the empty string“”)。

您要做的是使用转义序列\"在字符串文本中包含一个文字引号。写成这样:

代码语言:javascript
复制
"osql -Udatascan -Pdtsbsd7188228 -dpos -i\"c:\\temp_pd.sql\""

通常,引号"被解释为字符串文字的结尾,除非它前面有反斜杠,在这种情况下,它被解释为字符串中的引号字符。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5590229

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档