[問題] string gets的用法

作者: ga544523 (美麗新世界)   2014-07-19 18:41:21
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
c++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
string
iostream
問題(Question):
1.這是我打的一個用string的爛東東
自己在vc2010c++上執行時會出錯
但用線上編譯器ide執行時卻好像沒問題
請問這到底是?
http://ideone.com/PL1Lx0
2.
再來就是gets
我知道是一個可以讓你輸入包括空白字元的字串函數
但好像如果gets上面有像cin scanf之類的函數
他就會自動忽略gets
像這樣
http://ideone.com/nMoXMX
自己是有找到解決辦法就是在gets上面+個getchar()
但為什麼這樣就可以還是搞不懂
希望有人可以幫我解答
感恩喔
作者: bleed1979 (十三)   2014-07-19 21:46:00
對於I/O要以資料流的概念理解。
作者: x000032001 (版廢了該走了)   2014-07-19 23:45:00
因為他會把'\n'留在緩衝裡http://ideone.com/CVD22L http://ideone.com/dxkPm9另外string有.size()和iterator可以拿來loop
作者: ga544523 (美麗新世界)   2014-07-20 00:09:00
真後悔把編譯器給移除了
作者: longlongint (華哥爾)   2014-07-21 00:08:00
scanf("%c ",&v) 你需要更多的空白

Links booklink

Contact Us: admin [ a t ] ucptt.com