`
ay_guobo
  • 浏览: 116047 次
  • 性别: Icon_minigender_1
  • 来自: 札幌
社区版块
存档分类
最新评论

一个让高级C++程序员都会出错的小题目。

    博客分类:
  • C++
阅读更多

      今天看到一个题目,来自于《C++ Primer Plus》。这是一个比较典型的问题,很多人都会遇到,这也是一个在C++输入时经常遇到的一个问题。

// instr1.cpp -- reading more than one string
#include <iostream>
int main()
{
    using namespace std;
    const int ArSize = 20;
    char name[ArSize];
    char dessert[ArSize];

    cout << "Enter your name:\n";
    cin >> name;
    cout << "Enter your favorite dessert:\n";
    cin >> dessert;
    cout << "I have some delicious " << dessert;
    cout << " for you, " << name << ".\n";
    return 0; 
}
 

           大家可以想一下,这个程序的运行结果。

           如果你答对了,说明你C++学习的还比较好。o(∩_∩)o...

 

分享到:
评论
4 楼 timerri 2008-11-06  
主要看cin>>怎么实现的..
3 楼 ay_guobo 2008-11-04  
我想让大家给出你认为的程序的结果。呵呵。
这个程序还是可以运行的。
根据结果分析一下原因。
2 楼 DraculaW 2008-11-04  
缓冲区溢出
崩溃倒不一定
但是很可能会有使客户执行别的函数的权限
很严重的bug
1 楼 ray_linn 2008-11-04  
超过15个字符系统会崩溃--错误原因下标溢出。

相关推荐

    C++程序员面试试题总汇

    面试中,C++程序员经常会被问到一些关于语言核心特性的题目。以下是一些关键知识点,涉及到C++的引用这一特性及其在函数参数和返回值中的应用。 1. **函数func(x)的返回值**:此函数用于计算整数x二进制表示中1的...

    C++编程课的考试题目以及相应答案

    在C++编程领域,理解和掌握相关知识是至关重要的。这份“C++编程课的考试题目以及相应答案...建议大家不仅要关注语法细节,更要理解编程的本质,培养良好的编程习惯和调试技巧,这对成为一名优秀的C++程序员至关重要。

    C++经典程序百例(题目+源码)

    在《C++技能百练》中,每个例子都会覆盖上述一个或多个知识点,通过实际编程,学习者可以逐步加深对C++的理解,提升编程技巧。每完成一个例子,都应该尝试去理解背后的原理,并尝试修改源码,以检验和增强自己的理解...

    Microsoft Visual C++ 6.036题

    最后,标准模板库(STL)是C++中的一个强大工具集,包括容器(如vector、list、set)、迭代器、算法和函数对象。通过36题,开发者可以学习如何有效地利用STL来简化代码,提高程序效率。 总之,"Microsoft Visual ...

    C++面试题(很经典)

    调用pA-&gt;Print1()不会出错,因为Print1()的函数地址是固定的,编译器会传递一个this指针,即使这个指针是NULL。但是,Print2()需要访问m_value,这就需要非NULL的this指针,因此在调用Print2()时,程序会崩溃,因为...

    2010年下半年程序员考试试题及答案

    2010年下半年的考试试题及答案为考生提供了一个宝贵的复习资源,帮助他们了解考试的题型、难度和解题策略。 一、考试结构与内容 程序员考试通常分为两部分:理论知识和上机操作。理论知识部分涵盖了计算机系统基础...

    c++习题自测,很适合初学者哦

    C++是一种广泛应用于系统软件、应用软件、游戏开发、嵌入式系统等领域的高级编程语言。...每完成一个题目,都是对C++知识体系的一次深化理解。持续练习,你将能够更加熟练地驾驭C++,为未来更复杂的项目打下坚实基础。

    c++程序编写复习题

    STL是C++的一个重要组成部分,包含容器(如vector、list、set、map)、算法(如排序、查找)和迭代器。通过使用STL,你可以更高效地处理数据结构和算法,提高代码质量。 六、异常处理 了解如何在C++中使用try、...

    c++程序设计教程 钱能版 上机代码

    在C++程序设计中,上机实验是学习过程中的重要环节,它有助于加深对编程概念的理解,提升实际操作技能。钱能版的《C++程序设计教程》是一本广泛使用的教材,...在实践中不断学习和进步,是成为优秀C++程序员的关键。

    微软百度华为等大公司C++笔试题

    5. **内存管理**:理解动态内存分配(new/delete)和栈与堆的区别,以及如何避免内存泄漏,是C++程序员的基本功。 6. **异常处理**:C++的异常处理机制是程序出错时保持稳定性的关键,理解try-catch-finally语句块...

    《c++程序设计》课后习题参考答案

    根据给定的信息,我们可以从《C++程序设计》课后习题参考答案中提取和总结出以下几个关键知识点: ### 一、计算机语言的发展历程及特点 #### 1. 机器语言 - **特点**:使用二进制指令表示,计算机可以直接识别和...

    C++上机测试答案及建议培训(适用于非计算机专业)

    1. 变量和数据类型:在C++中,每个变量都有一个特定的数据类型,例如整型(int)、浮点型(float或double)、字符型(char)等。正确声明和使用变量是避免程序出错的关键。 2. 运算符:C++支持算术运算符(加、减、乘、除...

    C++6.0编程环境的使用

    在本章节中,我们将详细介绍如何使用Visual C++ 6.0(简称VC6)来编写并运行一个简单的C++程序。这不仅有助于理解基本的编程流程,还能够为后续更为复杂的项目打下坚实的基础。 ##### 1.1 编制并运行程序的“四步曲...

    C、C++达内汇总笔试题(全)-2013.doc

    【C、C++达内汇总笔试题(全)-2013....以上是C++中关于引用和相关面试题目的解析,理解和熟练掌握这些知识点对于C++程序员来说至关重要。在实际编程中,合理使用引用可以提高代码的可读性和效率,同时避免不必要的错误。

    (完整版)最新全国计算机等级考试二级c++题库6(共17套).doc

    * 循环队列是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供队列循环使用。 * 选项D是正确的,因为有序线性表既可以采用顺序存储结构,也可以采用链式存储结构。 题目2:E-R图转换为关系...

    ACM题目+大部分答案

    4. **异常处理**:C++的异常处理机制可以帮助开发者优雅地处理错误,而不必在每一处可能出错的地方都检查错误。 通过学习这些ACM题目和答案,你可以提高自己的算法思维和编程能力。可以深入理解不同算法的工作原理...

    C++笔试题集锦

    C++是一种广泛应用于系统软件开发、游戏编程、嵌入式系统和高性能计算等多个领域的编程语言。它以其高效性、灵活性和强大的功能而受到程序员的青睐。C++笔试题集锦涵盖了C++的基础语法、面向对象特性、模板、STL、...

    2019年计算机二级考试C++强化练习试题及答案一.doc

    ### 2019年计算机二级考试C++强化练习知识点详解 ...这里有一个小误差,因为根据题目的描述,叶子结点应该是 8 个。但是通过上述计算可以看出,这个题目实际上是在考察树的度和叶子结点数量之间的关系。

Global site tag (gtag.js) - Google Analytics