C语言C中和amp的用法详解

北京哪个看白癜风的医院好 https://wapjbk.39.net/yiyuanzaixian/bjzkbdfyy/etbdf/

C++中和*的用法一直是非常让人头疼的难点,网上讲这些知识点多数都是分开讲其用法的,没有详细的总结,导致我在这方面的知识结构格外混乱,在网上找到了一篇英文文章简单总结了这两个符号的一些用法,不过都是一些比较基础的知识。

C/C++中*和的用法

C++语言是C语言的超集。几乎所有可以运行的C程序都是可以运行的C++程序。因此,写一个不包含C++特性的C++程序是可能的,尽管cout和引用的使用(见下文)更好的构成了一个C++程序。C++和C在代码格式上偶尔会有不同,比如,在C语言中,我们这样把p声明为一个int类型的指针intp,而在C++中我们使用intp(编译器并不在意你使用的是哪种格式)。

在C/C++中,*和有很多用法,具体的使用要根据代码内容来确定。

C中*的用法

(a)乘法运算:x=y*z;

(b)乘法赋值运算:x*=y;相当于x=x*y

(c)注释:/这里是你的注释/

(d)指针的声明:intp或intp;读法:p是指向一个整数类型的指针。

(e)复合指针:intp;或intp;读法p是一个指向一个指向整数类型的指针的指针。(同样道理,int***p等等)

(f)解引用:x=*p把指针p指向的值赋值给x

在C语言中的用法

(a)逻辑与:if((a1)(b0))

(b)位运算与:x=ab;

(c)逻辑与赋值:x=y;与x=xy含义相同

(d)求地址运算符:p=x;读法:把x的地址赋给p(指针)

C++中的补充用法

C++中有一种C不存在的变量类型引用变量(简单说来为引用),尽管在C语言中用指针也可以实现类似的功能。

引用,指针,地址是联系密切的概念。地址是在电脑内存中的地址(一般是一些变量的值在内存中的储存位置),指针是存地址的变量,所以指针可以“指向”内存地址。概念上讲,引用变量本质上是指针的另一个名字(但是并不能被编译器实例化)

在函数内像其他变量一样定义一个引用是可能的,举例

voidmain(void)

{

inti;

intr=i;

}

但是这是没有意义的,因为引用的使用和对引用的变量的使用是一样的。

引用在函数的参数中被使用。

voidmain(void)

{

inti=3;

f(i);

couti;

}

voidf(intr)

{

r=2*r;

}

这段程序输出“6”(2*r使被r引用的变量加倍,也就是指i)

在C语言中,实现同样的功能,我们可以通过声明f()为voidf(int*r),其中r是指向整数类型的指针,然后调用参数i(i的地址)调用函数f(),在函数f()内使用r的解引用,但是显然,C++提供了一种更简明的通过引用的方式向函数传值,从函数中返回值。




转载请注明:http://www.aierlanlan.com/rzfs/7179.html

  • 上一篇文章:
  •   
  • 下一篇文章: