如果两个操作数为正,除法(/)和求模(%)操作的结果也是正数(或零),而求模操作的结果则为负数(或零);如果只有一个操作数为负数,这两种操作的结果取决于机器,求模结果的符号也取决于机器,而除法操作的值则是负数(或零)
21%6 =3
21%7 =0
-21 % -8 =-5
21 % -5 = //machine dependent: result is 1 or -4
21 /6 = 3;
21 /7 =3;
-21 / -8 = 2;
21 / -5 = //machine dependent: result -4 or -5
出于性能的考虑,只有在必要时才使用后置操作符
//sizeof(ia) /sizeof(*ia) returns the numbers
//of elements in ia
int sz = sizeof(ia) / sizeof(*ia);
//oops! language does not define order of
// evaluation
if ( ia[index++] < is[index] )
复合表达式的处理处理原则:
(1) 如果有怀疑,则在表达式上按程序逻辑要求来使用圆括号强制操作数的组合。
(2) 如果要修改操作数的值,则不要在同一个语句的其他地方使用该操作数。如果必须使用改变的值,则把该表达式分割成两个独立语句:在一个语句中改变该操作数的值,再在下一个语句使用它。(*++iter类似的 情况例外)
以一种安全而且独立于机器的方式重写上述比较两个数组元素的程序:
if (ia[index] < ia[index+1])
//statements
}
++index;
正如我们(几乎)总是要初始化定义为变量的对象一样,在动态创建对象时,(几乎)总是对它做初始化也是一个好办法。
一旦删除了指针所指向的对象,立即将指针置为0,这样就非常清楚地表明指针不再指向任何对象。
分享到:
相关推荐
**C++学习笔记--函数** 在C++编程中,函数是一种可重用的代码块,它执行特定的任务并可能接收参数、返回值或两者都有。本笔记将深入探讨C++中的函数,包括它们的定义、调用、参数传递以及如何在实际编程中有效地...
《谭浩强C++学习笔记(1-6章)》主要涵盖了C++语言的基础知识,包括数据类型、运算符和表达式。以下是这些章节的主要内容: 1. **数据类型**: - `char` 类型有两种,有符号和无符号。无符号 `char` 范围是 0 到 ...
这份"C++学习笔记"涵盖了C++的基础到高级概念,旨在帮助初学者和有一定经验的程序员深入理解并掌握C++。 在C++的学习过程中,以下几个关键知识点是不可或缺的: 1. **基础语法**:C++起源于C语言,因此它保留了...
- **表达式**:如 `a = 10` 和 `(a + 5) = 10`,这并不是标准的C++语法,但在实际编程中,我们会遇到赋值语句如 `a = 10` 和条件判断语句如 `if (a + 5 == 10)`。 - **递增操作符**:`++i` 表示先递增后使用,而 `i+...
【C++ 学习笔记】深入理解编程与C++基础 C++是一种强大的、面向对象的编程语言,广泛应用于系统软件、游戏开发、嵌入式系统以及许多高性能应用。学习C++不仅仅是掌握语法,更重要的是理解编程的核心概念,以便更好...
【C++学习笔记】这份详尽的资源是为那些希望深入了解C++编程语言的人们精心准备的。C++是一种强大的、通用的编程语言,它的设计理念是面向对象,同时支持过程化编程,使得它在系统软件、应用软件、游戏开发、设备...
在Python学习笔记中,作者皮大庆介绍了Python的基础知识,包括程序、调试、程序语言与自然语言的关系、第一个程序的编写等。接着,笔记进入了变量、表达式、语句等基础概念的讲解,逐步深入到函数的定义、使用、参数...
C++是一种强大的面向对象编程语言,它源自C语言并扩展了其...学习这些概念是成为C++程序员的第一步。在实际编程中,还需要理解类、对象、继承、多态等面向对象编程的概念,以及函数、模板、文件操作等更高级的主题。
【C++学习笔记概述】 C++是一门强大的编程语言,其在C语言的基础上进行了扩展,引入了许多现代化的特性。这份笔记主要涵盖了C++的基础知识,包括C++11和C++17的新特性,旨在帮助初学者理解C++的核心概念。 ### C++...
C++学习笔记 本文档提供了C++语言的基础知识,包括输入输出、变量、数据类型、运算符、内存管理、指针、流程控制语句等。 输入输出 C++语言提供了多种输入输出方式,包括使用cin和cout对象。cin对象用于从标准...
### C++笔记 -- 整型数据与字符类型详解 #### 整型数据 整型数据在C++中占据着非常重要的地位,它们用于表示没有小数部分的数值。C++支持多种类型的整型数据,包括有符号整型和无符号整型。 ##### 1. **有符号...
- **C++与标准规范**:学习的C++版本应该遵循ANSI规范,这样编写的代码具有更好的可移植性,可以在不同的操作系统和硬件平台上运行而无需进行大量修改。 ### 编译与连接过程 - **开发周期**:源程序经过一系列步骤...
这份"C++学习笔记"涵盖了C++的基础概念、语法结构、面向对象编程以及可能的高级主题,旨在帮助初学者或者有经验的程序员巩固C++知识。 首先,C++是从C语言发展而来,它保留了C语言的效率,同时引入了类和对象的概念...
标题"Cpp.rar - C++学习笔记"暗示了这份压缩包可能包含一系列关于C++的学习资料,比如笔记、代码示例或者教程。这些笔记可能会涵盖C++的基础语法、类与对象、模板、异常处理、STL(标准模板库)、内存管理等方面。...
《Effective Modern C++:改善C++11和C++14的42个具体做法(影印版)(英文版)》中包括以下主题:剖析花括号初始化、noexcept规范、完美转发、智能指针make函数的优缺点;讲解std∷move,std∷forward,rvalue引用和全局...
### JAVA学习经典笔记知识点概述 #### 一、Java与C++的区别 1. **内存管理:** Java自动管理内存,通过垃圾回收机制自动清理不再使用的对象;而C++需要程序员手动管理内存,容易出现内存泄漏等问题。 2. **平台...
这个压缩包显然包含了作者在这些主题上的学习笔记,可能是教程、代码示例、问题解决方案或者个人心得。 【描述】"只要是我的一些笔记,关于qt,c#,C++的,用来做个备份,防止本地不小心删掉了" 说明了这些笔记的主要...
本学习笔记将深入探讨C++的基础、核心概念以及高级特性,帮助读者从初学者到熟练掌握C++。 一、C++基础 C++的基础包括基本语法、数据类型、变量、运算符、流程控制(如if语句、switch语句、for循环、while循环)和...
这份"C++笔记"包含了学习C++时的重要知识点和实践技巧。 1. **基础语法**:C++的基础包括变量、数据类型(如整型、浮点型、字符型等)、运算符(算术、比较、逻辑、位运算符等)、流程控制语句(如if-else、switch-...
在这一段文字中,我们看到了Python学习笔记的概览和一些关于Python语言的基本信息。首先,皮大庆作为作者,他的学习笔记是基于《How to think like a computer scientist》这本书编写的,非常适合初学者入门,也是...