下沙论坛

 找回密码
 注册论坛(EC通行证)

QQ登录

QQ登录

下沙大学生网QQ群8(千人群)
群号:6490324 ,验证:下沙大学生网。
用手机发布本地信息严禁群发,各种宣传贴请发表在下沙信息版块有问必答,欢迎提问 提升会员等级,助你宣传
新会员必读 大学生的论坛下沙新生必读下沙币获得方法及使用
查看: 6361|回复: 2
打印 上一主题 下一主题

basic_ifstream tellg ws

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2006-3-19 18:34:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
平台:    Redhat Linux AS 4* d" A0 p. ]% s2 O6 o e0 T0 j 编译器  g++ 3.2.3 , y7 r; \$ c* Z8 V2 [& h. B* m输源代码& E7 l* S" g8 S6 ]: E- d #include " [/ s8 K6 Y$ _& \ L#include ! k2 |& _# v( F! ]7 {7 e#include ; s& A; u# H) [; H9 K3 z#include " _$ ]6 x3 q% l q using namespace std;& T+ R7 |0 s6 K int main()& D2 h0 G9 J) V- |4 f { 1 ~3 y" k# r9 C. g //cout<<"Hello World\n";/ ?/ t: z% o/ A9 X 4 `* l6 C' u. @) E, Z7 ~6 R //block until user types something 8 S% w1 O1 t2 k basic_ifstream fi;/ ?9 G5 x7 U* g wstring s; - {8 F( j1 y1 b& j9 [ fi.open("/root/workspace/test/123.txt");( j8 {- g7 O: j0 C5 g cout<7 j+ G- e8 P6 j+ p; } ws(fi);    //去除空白 , i' I- Z- b+ q! k) N# D7 c fi.tellg();   //读一下下一个读取位置   [U]没被注释掉[/U]---〉第一种情况" c( U! T; O3 D/ U0 _9 r% D4 Z [U]被注释掉[/U]---〉第二种情况* P: \; I( D8 ?4 D7 H) F2 H getline(fi,s); //读一行 4 w& m, k4 k; ~4 m3 A- D6 t wcout<. w6 b7 L, l/ ]1 ^/ Z fgetc(stdin);: {6 g p4 X0 j% P) c return 0;' D5 ?& b- P6 h7 s1 U- _& B/ k } 4 }6 r+ r/ @7 P, d8 b /* : s! s9 T" Z4 `8 [* O$ M N123.txt内容在下面一行的引号内,引号内第一个是空格 , Z9 T8 z. W D+ |" #define"' ^9 e2 Y# x! k/ r- x+ a */ ) L: C8 q- ~& p输出' L' W( Q) X7 G+ K* q9 v; l3 R; P% V (第一种情况和第二种情况都是下面的样子([U]#前面没有空格[/U]))1 r4 o8 ?2 I0 T5 ?7 _: `& s6 i& t. O 1 " s, d; m$ n5 s/ k#define/ I1 f: o b9 @( ?( z4 _, d /////////////////////////////////////////////////////////////////////////////////////////// # L3 p; z/ L5 ^7 d; R1 E; P5 W平台:    winxp8 _5 A5 M# q8 z$ Q" h% ]6 \ 编译器  [U]ms ml 8.0.50727.42 (vc++ 2005)[/U]---〉情况A' C, m+ n4 `9 C+ m% K' |. R* ~' B- J1 P& o3 d [U]ms ml ????(忘了,就是vc++6.0的)[/U]---〉情况B , t3 G3 F9 O ]7 `: [输源代码 8 \8 d8 n3 P/ [; t; L#include % ]: e5 S" b; G$ w) R( g) o#include ' d7 m9 G, A: n #include 2 x$ [ U/ L8 \0 p* x% ]1 Y4 b #include / D C+ [5 W/ {& B2 o: z9 c7 o8 Cusing namespace std;) D4 a1 w6 n5 b @, d) a int main() 5 C: E1 [+ u# q4 K2 g4 v( r% Z{3 T" k) t. Z0 h9 M6 q //cout<<"Hello World\n";; U7 o2 B, f0 {8 Q 5 s6 e& } D- n& F" F8 t6 V- W //block until user types something B+ h9 c3 y% m: ?# ` basic_ifstream fi; ' H0 e$ j& o" W B8 g6 n4 V wstring s; 0 w; G1 J$ I( S" n/ e& m5 A fi.open("123.txt");1 S$ u) s6 v+ Z0 _6 m cout<, ^2 ^1 ?! V; b+ b2 G4 e ws(fi); 1 q" T/ O6 m- V6 \$ k8 p: G/ o //fi.tellg(); [U] //被注释掉[/U]---〉第一种情况 9 V1 V; Y! t, n4 i# T [U]//没被注释掉[/U]---〉第二种情况 . T, v; ^; ^7 v T getline(fi,s);* \* n. K1 W0 [, N! R" ~6 _ wcout<, }; h4 W, o$ w5 Z3 T, S6 N1 f9 | fgetc(stdin);9 E, h' S9 h6 ^5 X return 0; ! i: m, ^+ g5 n# V} 4 G' \$ K q8 b" { 9 Z" \7 o Y+ t7 O/*+ r+ @2 y# w, M8 i 123.txt内容在下面一行的引号内,引号内第一个是空格- f0 _* g+ o2 I X9 \; o6 C8 Q " #define" 7 ^# c4 r3 u& f8 D$ v*/ 4 W3 \8 v6 N" F' k% U& ]输出 : y3 j4 R2 t4 {4 Y' F; p(情况A+第一种情况) + ~0 W0 i) P$ ?( A( H 17 V; p$ e/ d% A" u# e4 V #define4 V4 U* u2 `3 I (跟g++一样) : b+ b# q/ D& ~/ O(情况A+第二种情况) 4 g; `$ K; `: }7 N) K/ B! Q) h* z/ d 1 5 }/ _0 S# U6 q# j# _define p& v" |9 r$ v% g2 n$ Y9 w (跟g++[U]不[/U]一样,少了#,是tellg()导致?) 8 b+ b* S' G5 i# n4 B* m////////////////////////////////////////////: T5 i. l$ {% K' v2 ^. ^6 W. g (情况B+第一种情况/第二种情况). \2 ]& F" u& [& [2 ^9 K 13 ^3 U. W' B6 p0 ?0 n$ Q( Y! Z #define3 I# ~6 h, t' h5 Z% d (跟g++[U]不[/U]一样,#前多了空格,ws没作用?) + {5 `5 q! P1 b0 U/ _' Q//--------------------------------------------------------------------------& r1 S$ X; T: r 评价如下:( [7 |( o* Z; w% {$ G 按照理论 - M& X$ [6 s5 E% m4 H8 L. zg++两种情况下的输出都是对的9 m' h- R* S# f vc++2005只有第一种情况对 / W w# e) V# l2 {1 B, {0 b; d+ pvc++6两种情况都有问题 $ ]! H4 l: Z* d% ?' v/ N! ~; m/ s3 I现在的问题是,这样的评价有没有问题,输出为什么不同?/ s, Z5 i2 e2 }% s! {1 W1 t (本人希望得到g++的输出,根据文档就应该这样)
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩

该用户从未签到

2
发表于 2006-3-19 21:33:00 | 只看该作者

代码好多啊,我最近眼有点花,飘过。

回复 支持 反对

使用道具 举报

该用户从未签到

3
 楼主| 发表于 2006-3-27 22:10:00 | 只看该作者
难道就没人碰上过这个问题?? / d1 J" u+ e& Q& N7 [# k注: , h+ W/ L, ^! V2 I# ~1楼帖子的内容显示是有问题的 ' {% S6 T3 b4 \' C( y1 r# @- j. a比如“#include”,后面的内容显示不出来 7 r4 x3 n$ s' E! P* n' `. |比如“cout<”,后面的内容显示不出来
回复 支持 反对

使用道具 举报

本版积分规则

关闭

下沙大学生网推荐上一条 /1 下一条

快速回复 返回顶部 返回列表