本文主要是介绍C和C++中的差别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
C | C++ | |
& | 取地址 | 取地址 |
位运算 | 位运算 | |
两个&表示与 | 两个&表示与 | |
- | 引用 |
1.C++比C多了一种新特性,即引用;如下语句,C语言中会报错,C++中不会,因为C++中这里表示引用:
void fun2(int &p)
C语言中汇报错是因为&p不管是那种用法都不能作为左值;
2.C语言中按指针传递参数的例子如下:
#include<stdio.h>void fun1(int *p)
{*p = 2;printf("p is %d\n", *p);
}int main()
{int a = 1;int *ptr = &a;printf("ptr is %d\n", *ptr);fun1(&a);//fun1(ptr);运行结果也是一样的printf("ptr is %d\n", *ptr);getchar();return 0;
}
运行结果如下:
3.C++中&作为引用的例子如下:
#include<stdio.h>void fun2(int &p)
{p = 2;printf("p is %d\n", p);
}int main()
{int a = 1;int *ptr = &a;printf("ptr is %d\n", *ptr);fun2(*ptr);printf("ptr is %d\n", *ptr);getchar();return 0;
}
运行结果和上面的一样,按运用传递参数,传递的是变量本身,不是变量的拷贝。
这篇关于C和C++中的差别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!