C++编程:非十进制数输入注意事项

需积分: 9 22 下载量 61 浏览量 更新于2024-08-23 收藏 8.66MB PPT 举报
"使用非十进制数输入时要注意以下几点-谭浩强经典C++" 在C++编程中,处理非十进制数(如八进制和十六进制)时,有一些重要的注意事项: 1. **类型限制**: 八进制(基数为8)和十六进制(基数为16)的数值输入通常只适用于整型变量,而不适用于字符型(char)或实型(float/double)变量。这意味着当你试图将一个八进制或十六进制的数赋值给一个字符变量时,编译器会报错,因为字符变量通常存储单个ASCII码值,而非数值。而对于实型变量,你必须先将其转换为十进制表示再进行赋值。 2. **输入流的持续性**: 在C++的I/O流中,比如`std::cin`,当你指定了特定的数制(如使用`oct`或`hex`)进行输入后,这个设定会一直有效,直到下一个输入流指令指定了不同的数制。例如,如果你在输入一个变量后使用`std::cin >> std::oct`指定了八进制输入,那么接下来的输入也会被解析为八进制,直到有新的指示改变数制。 3. **C++的发展历程**: C++语言是在C语言的基础上发展起来的,由Dennis Ritchie和Brian Kernighan等人在20世纪70年代设计的C语言基础上,于1980年代由Bjarne Stroustrup进一步扩展和完善,以支持面向对象编程和泛型编程。C++保留了C语言的许多特点,如简洁、高效,同时增加了类、模板、异常处理等高级特性,使得程序设计更为灵活且易于维护。 4. **C语言的主要特性**: - **结构化**:C语言是一种结构化编程语言,它的程序结构清晰,便于理解和调试。 - **混合性质**:C语言结合了高级语言和汇编语言的特点,提供了丰富的运算符,包括位运算,支持直接操作硬件。 - **可移植性**:C语言编写的程序可以轻易地移植到不同类型的计算机系统上,只需少量或无需修改。 - **灵活性**:语法结构相对宽松,允许程序员有很大的设计自由度,但也增加了学习和调试的难度。 在使用C++编程时,理解这些要点对于正确处理非十进制数的输入至关重要。同时,熟悉C++的历史和主要特性有助于更好地掌握编程实践,编写出高效、可读性强且易于移植的代码。在编程过程中,特别是对于初学者,应当特别注意语法规则,避免在程序运行时出现错误。