(防止遗忘,今日自学内容)
1.指针与数组:
①数组的首地址是数组的名称:
int a[10]={1,2,3,4,........};//用数据填充
int *p=a;//a此时代表是一个地址
std::cout<<*p;
2.指针与const:
int a=10,b=20,c=10;
①const int *p=&a
const修饰的是int,也就是*p的指向可以改变,但是它所指的值是不变的
(*p=&a条件下,*p=&b错误:a=10,而b=20
*p=&c正确:指向可以改变)
②int *const p=&a
const修饰的是地址,也就是说指针的指向不能改变,但是所指向的数值是能够改变的
(*p=&a条件下,*p=&b正确:a=10,而b=20
*p=&c错误:指向不可以改变)
③const int *const p=&a
指向与所指向的数值都不能够改变
3.指针实现冒泡算法(目的就是熟悉冒泡排序与地址传递)
void bubbleSort(int *arr,int len)
{
for(int i=0;i<len-1;i++)
{
for(int j=0;j<len-1-i;j++)
{
if(arr[j]>arr[j+1])
{
int temp;
temp=arr[j];arr[j]=arr[j+1];arr[j+1]=temp;
}
}
}
}
int main()
{
int arr[10]={4,2,3,1,6,8,10,9,7};
int len=sizeof(arr);
bubbleSort(arr,len);
}