分类目录归档:C/C++基本语法

学好C/C++的语法,这样才能更好地运用C/C++,只发表技术性文章。

换行符和endl的区别
HOT

在编程中,当有多行cout<<输出后有些结尾用了endl,而有些又没用,请问什么时候需要,什么时候不需要,有没用什么影响?那"\n"是不是单纯的换行作用?这是Console(控制台)编程是一种输出方式方法。"\n"表示的是换行符(newline),输出换行符时,它结束当前的行,并将随后的输出导向到下一行,起单纯的换行作用。"endl"是一个预定义的iostream操纵符,endl在输出...
阅读全文

内联函数
HOT

 引入内联函数的目的是为了解决程序中函数调用的效率问题。    函数是一种更高级的抽象。它的引入使得编程者只关心函数的功能和使用方法,而不必关心函数功能的具体实现;函数的引入可以减少程序的目标代码,实现程序代码和数据的共享。但是,函数调用也会带来降低效率的问题,因为调用函数实际上将程序执行顺序转移到函数所存放在内存中某个地址,将函数的程序内容执行完...
阅读全文

浅谈C++函数的参数
HOT

函数参数的求值顺序    当一个函数带有多个参数时,C++语言没有规定在函数调用时实参的求值顺序。而编译器根据对代码进行优化的需要自行规定对实参的求值顺序。有的编译器规定自左至右,有的编译器规定自右至左,这种对求值顺序的不同规定,对一般参数来讲没有影响。但是,如果实参表达式中带有副作用的运算符时,就有可能产生由于求值顺序不同而造成了二义性。例如:int&nb...
阅读全文

教你理解复杂的C/C++声明
HOT

介绍 曾经碰到过让你迷惑不解、类似于int * (* (*fp1) (int) ) ;这样的变量声明吗?本文将由易到难,一步一步教会你如何理解这种复杂的C/C++声明:我们将从每天都能碰到的较简单的声明入手,然后逐步加入const修饰符和typedef,还有函数指针,最后介绍一个能够让你准确地理解任何C/C++声明的“右左法则”。需要强调一下的是,复杂的C/C++声明并不是好的编程风格;我这里仅仅...
阅读全文

解析C语言中的sizeof
HOT

一、sizeof的概念    sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。sizeof操作符以字节形式给出 了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。 二、sizeof的使用方法    1、用于数据类型    sizeof使用形式:sizeof(type)    数据类型必须用括号括住。如size...
阅读全文

深入探讨C++中的引用
HOT

摘要:介绍C++引用的基本概念,通过详细的应用分析与说明,对引用进行全面、透彻地阐述。  关键词:引用,const,多态,指针  引用是C++引入的新语言特性,是C++常用的一个重要内容之一,正确、灵活地使用引用,可以使程序简洁、高效。我在工作中发现,许多人使用它仅仅是想当然,在某些微妙的场合,很容易出错,究其原由,大多因为没有搞清本源。故在本篇中我将对引用进行详细讨论,希望对大家更好地理解和使用...
阅读全文

C/C++语言void及void指针深层探索
HOT

1.概述  许多初学者对C/C++语言中的void及void指针类型不甚理解,因此在使用上出现了一些错误。本文将对void关键字的深刻含义进行解说,并详述void及void指针类型的使用方法与技巧。  2.void的含义  void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。  void几乎只有“注释”和限制程序的作用,因为从来没有人会定义一个voi...
阅读全文

C++中extern "C"含义深层探索
HOT

1.引言   C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与C有明显的不同...
阅读全文

C++箴言:谨慎使用私有继承
HOT

 在《C++箴言:确保公开继承模拟“is-a”》一文中论述了 C++ 将 public inheritance(公有继承)视为一个 is-a 关系。当给定一个 hierarchy(继承体系),其中有一个 class Student 从一个 class Person 公有继承,当为一个函数调用的成功而有必要时,需要将 Students 隐式转型为 Persons,它通过向编译器展示来做到这一点。用 ...
阅读全文

C++箴言:谨慎使用多继承
HOT

触及 multiple inheritance (MI)(多继承)的时候,C++ 社区就会鲜明地分裂为两个基本的阵营。一个阵营认为如果 single inheritance (SI)(单继承)是有好处的,multiple inheritance(多继承)一定更有好处。另一个阵营认为 single inheritance(单继承)有好处,但是多继承引起的麻烦使它得不偿失。在本文中,我们的主要目的是理...
阅读全文

创建和使用库:静态、共享和动态
HOT

C语言中有一些函数不需要进行编译,有一些函数也可以在多个文凭中使用。一般来说,这些函数都会执行一些标准任务,如数据库输入/输出操作或屏幕控制等。可以事先对这些函数进行编译,然后将它们放置在一些特殊的目标代码文件中,这些目标代码文件就称为库。库文件中的函数可以通过连接程序与应用程序进行连接。这样就不必在每次开发程序时都对这些通用的函数进行编译了。 不同类型的应用程序将会使用不同的函数库。例如:lib...
阅读全文

C 语言的特点
HOT

 C 语言发展如此迅速, 而且成为最受欢迎的语言之一, 主要因为它具有强大的功能。许多著名的系统软件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 语言编写的。用C 语言加上一些汇编语言子程序, 就更能显示C 语言的优势了,   象PC- DOS 、WORDSTAR等就是用这种方法编写的。归纳起来C 语言具有下列特点:  &nb...
阅读全文

【C++提高】成员函数指针在开发中的实际应用
HOT

【C++提高】成员函数指针在开发中的实际应用作者:dozb前几天我的《成员函数指针》一文,主要介绍了类成员函数指针的使用方法,大家看了后认为意义不大,那是因为你可能还没有真正在开发中遇到需要用成员函数指针的情况。这篇文章就作为《成员函数指针》一文补充,举例说明在什么情况下使用成员函数指针来简化开发。设想我们要实现一个命令解释器类,就是这个类包括了若干个命令,通常我们的实现方法如下:class Cm...
阅读全文

【C++提高】成员函数指针
HOT

类对象的成员函数有时可以当作一般的 ANSI C 函数一样处理。正如可以声明指向对象数据成员的一般指针一样,也可以声明指向对象成员函数的指针,然后通过该指针间接调用该函数。请看例1:     例1 使用成员函数指针      class Example{   ...
阅读全文
15 页 / 共 18