指针修改变量的值,以及指针交换两个数字的值的问题
来源:互联网 发布:处理器调度算法实现 编辑:程序博客网 时间:2024/05/21 05:25
#include <iostream>
using namespace std;
// 可以实现交换数值,但是不知道为什么?
//先读完程序然后告诉你。
void swap(int *a,int *b){
int *t;
t=a;
a=b;
b=t;
}
void main(){
int a=10;
int b=20;
swap(&a,&b); //不能实现交换
swap(a,b);
cout<<a<<endl; //20
cout<<b<<endl; //10
system("pause");
}
//答案就是:库函数的存在,你的函数名称和库函数名称一样了,那么这样默认调用的是库函数。
void hah(int *a,int *b){
int *t=a;
a=b;
b=t;
}
int main()
{
int a=10;
int b=20;
hah(&a,&b);
cout<<a<<endl;
cout<<b<<endl;
system("pause");
}
//不能交换两个数字的值
void swap1(int *a,int *b){
int *t;
t=a;
a=b;
b=t;
}
void main(){
int a=10;
int b=20;
swap(&a,&b); //不能实现交换
cout<<a<<endl; //10
cout<<b<<endl; //20
system("pause");
}
//通过引用改变两个数的值
void swap2(int &a,int &b){
int c=a;
a=b;
b=c;
}
int _tmain(int argc, _TCHAR* argv[])
{
int a=10;
int b=20;
swap(a,b);
cout<<a<<endl; //20
cout<<b<<endl; //10
system("pause");
}
//通过指针改变变量的值
void fun1(int *p){
(*p)++;
}
void main(){
int a=100;
fun1(&a);
cout<<a<<endl;//101
system("pause");
}
//实现地址的移动
void fun2(int *&a){
++a;
}
void main(){
int a=100;
int *b=&a
fun1(b);
cout<<a<<endl;//100
cout<<b<<endl;//输出的内容不确定
system("pause");
}
//通过引用改变值
void fun3(int &a){
++a;
}
int main(){
int a=100;
fun3(a);
cout<<a<<endl;
}
using namespace std;
// 可以实现交换数值,但是不知道为什么?
//先读完程序然后告诉你。
void swap(int *a,int *b){
int *t;
t=a;
a=b;
b=t;
}
void main(){
int a=10;
int b=20;
swap(&a,&b); //不能实现交换
swap(a,b);
cout<<a<<endl; //20
cout<<b<<endl; //10
system("pause");
}
//答案就是:库函数的存在,你的函数名称和库函数名称一样了,那么这样默认调用的是库函数。
//这样实现了交换的两个数字值的功能,又没有调用自己写的方法。
void hah(int *a,int *b){
int *t=a;
a=b;
b=t;
}
int main()
{
int a=10;
int b=20;
hah(&a,&b);
cout<<a<<endl;
cout<<b<<endl;
system("pause");
}
//不能交换两个数字的值
void swap1(int *a,int *b){
int *t;
t=a;
a=b;
b=t;
}
void main(){
int a=10;
int b=20;
swap(&a,&b); //不能实现交换
cout<<a<<endl; //10
cout<<b<<endl; //20
system("pause");
}
//通过引用改变两个数的值
void swap2(int &a,int &b){
int c=a;
a=b;
b=c;
}
int _tmain(int argc, _TCHAR* argv[])
{
int a=10;
int b=20;
swap(a,b);
cout<<a<<endl; //20
cout<<b<<endl; //10
system("pause");
}
//通过指针改变变量的值
void fun1(int *p){
(*p)++;
}
void main(){
int a=100;
fun1(&a);
cout<<a<<endl;//101
system("pause");
}
//实现地址的移动
void fun2(int *&a){
++a;
}
void main(){
int a=100;
int *b=&a
fun1(b);
cout<<a<<endl;//100
cout<<b<<endl;//输出的内容不确定
system("pause");
}
//通过引用改变值
void fun3(int &a){
++a;
}
int main(){
int a=100;
fun3(a);
cout<<a<<endl;
}
1 0
- 指针修改变量的值,以及指针交换两个数字的值的问题
- 指针之交换两个变量的值
- c++中用指针交换两个变量的值
- 使用指针交换两个整形变量的值
- 067.Pointer 使用指针交换两个变量的值
- 067.Pointer 使用指针交换两个变量的值
- 使用C语言指针交换两个变量的值
- c_指针_通过指针交换两个变量的值且不使用新变量
- 指针变量的交换
- 交换两个变量的值,不借助第三方变量 ---指针篇
- C语言中交换两个指针变量所指向的值
- [c语言笔记]关于指针操作中使用异或交换两个变量的值
- 通过函数给指针赋值(二)交换两个变量的值
- 指针变量以及指针变量的类型转换问题
- c语言指针的之交换两个数的值
- 交换两个数的值的三种指针方法——指针的引用和指向指针的指针
- 交换两个数字的值
- 不利用第三个变量交换两个数字的值
- 入眠
- Webshell实现与隐藏探究
- javascript 基础 js类和原型
- linux之GPIO的使用------OK6410
- 记单词015
- 指针修改变量的值,以及指针交换两个数字的值的问题
- 解决方法——AttributeError: 'module' object has no attribute 'VideoWriter_fourcc'
- 每个开发人员现在应该下载的十种必备工具
- 本周需要做的事情
- 小白笔记----------------------leetcode(9. Palindrome Number)
- Android开发入门——推箱子游戏开发实战(九)
- JavaScript常用API总结
- 献给大学生,未来程序猿的前端学习网站
- 【Unity资源】(模型/人形)