c++指针访问数组
#include<iostream>
using namespace std;
#include<ctime>
#include<string>
int main()
{
int arr[4]={10,20,30,40};
int *p=arr;//指针访问第一个数据
for (int i = 0; i < 3; i++)
{
cout<<*p<<endl;/* code */
p++;//指针偏移遍历每一个数据
}
指针进行函数传递
#include<iostream>
using namespace std;
#include<ctime>
#include<string>
void swap(int *p1,int *p2)//指针作为参数
{
int temp=*p1;
*p1=*p2;
*p2=temp;//通过指针进行数据的交换
}
int main()
{
int a=1000;
int b=2000;
cout<<"交换前a="<<a<<endl;
cout<<"交换前b="<<b<<endl;
swap(&a,&b);//传入实参
cout<<"交换后a="<<a<<endl;
cout<<"交换后b="<<b<<endl;
system("pause");
return 0;
}
指针应用实例
#include<iostream>
using namespace std;
#include<ctime>
#include<string>
void bum(int *arr,int len)//定义排序函数,传递地址参数
{
for (int i = 0; i < len-1; i++)
{
for (int j = 0; j < len-i-1; j++)
{
if (arr[j]>arr[j+1]/* condition */)
{
int temp=arr[j];/* code */
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}
void printArry(int *arr,int len)//定义打印函数,传递地址参数
{
for (int i = 0; i < len; i++)
{
cout<<arr[i]<<endl;/* code */
}
}
int main()
{
int arr[]={1,4,2,8,9,5,3,7,10,6};
int len=sizeof(arr)/sizeof(arr[0]);
bum(arr,len);//传递实参调用函数
printArry(arr,len);//传递实参调用函数
system("pause");
return 0;
}
请先 后发表评论~