学习笔记之vi之用vimgdb调试scanf
2012-12-31 13:24
423 查看
#include <stdio.h> #include <stdlib.h> int main() { int i,j=0,k=0; int sum=0; char ch; printf("请输入一串整数和任意数目的空格:"); while(scanf("%d",&i)==1) { sum +=i; while((ch=getchar())==' ') //屏蔽空格 ; if(ch == '\n') { break; } ungetc(ch,stdin); } printf("结果是:%d",sum); printf("\n"); return 0; }
建立一个文本(比如data1),在data1里输入scanf 需要的数据,以空格分隔。保存。
在vimgdb里空格调出gdb 窗口,输入r un < data1就可以了。暂记:输入两段不同的数据还不可行。
//后记:又修改了代码,将两行数据文件data1中,发现出现预期的调试效果。data1文件:1 2 3 4 5
6 7 8 9 10这样每一行的结尾就是一个‘/n’,与原代码的原意相符合。
代码例程参考:www.fishc.com C++代码对比
#include <iostream> using namespace std; int main() { int sum = 0; cout << "请输入一串整数和任意数目的空格:"; int i; //可任意处定义变量 while(cin >> i) //输入流向变量i,由变量i保存 //如果输入为一个小数点,视为非法值,返回false。要不,就将int型改成float型 { sum += i; while(cin.peek() == ' ')//cin作为一个对象,而peek()便为它的一个对象 { cin.get(); } if(cin.peek()=='\n') { break; } } cin.ignore(100,'\n'); /*作用相当于忽略了键盘缓冲区的Enter键。*/ cout<< "结果是:"<< sum << endl;cin.get();
return 0;
}
相关文章推荐
- SRS学习笔记9-rtmp监听线程创建推流线程的过程分析-gdb调试
- 2012.3.1 linux学习笔记 GDB调试方法
- [Linux学习笔记] Linux文本编辑器Vim/Vi
- 手把手教你使用eclipse+qemu+gdb来单步调试ARM内核【学习笔记】
- 【GDB调试学习笔记】 Makefie上
- BIND9源码学习笔记1---gdb调试篇
- go语言笔记——调试还很弱,用gdb来做?可用panic和defer。格式化代码使用gofmt,貌似我的vim插件是自带
- VI和VIM编辑器深入学习笔记--基本vi命令
- GDB调试工具学习笔记
- vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb
- 【GDB调试学习笔记】Makefile多级目录生成多个可执行文件
- vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb
- linux学习笔记--vi与vim编辑器
- Linux运维学习笔记-常用快捷键及vi、vim总结
- 【GDB调试学习笔记】调试程序段错误
- GDB学习笔记(二)--调试段错误
- vi/vim: 在VIM中使用GDB调试 – 使用vimgdb
- 【GDB调试学习笔记】GDB调试入门
- llvm 学习笔记 1 :gdb 调试 llvm
- 【GDB调试学习笔记】Makefile生成多个可执行文件