c++第八篇

简介: c++第八篇
#include<bits/stdc++.h>
#include <iomanip>
using namespace std;
void swap(int *p1,int *p2){
  int t=*p1;
  *p1=*p2;
  *p2=t;
} 
int main()
{
  //指针
  //1、定义一个指针
   int a=10;
   int *p=&a; 
  printf("%d", &a);
  printf("%d\n", p);
  //2、使用指针
  //通过解引用的方式来找到指针指向的内存
  cout<<*p<<endl; 
  //3、指针占用的内存大小
  //在32位操作系统占4字节
  //在64位操作系统占8字节 
  cout<<sizeof(p)<<endl; 
  //空指针
  //空指针用于给指针变量进行初始化
  int *p1=NULL;
  //空指针是不可以进行访问的
  //*p=100;报错(0~255之间的内存是系统占用的,不允许用户访问) 
  //野指针
  // 指针变量指向非法空间
  int  *p2= (int *)0x1100;
  //cout<<*p<<endl; 
  //const 修饰指针
  const int * p3=&a;//指针的指向可以改,指针的值不能改
  int * const p4=&a;//指针的指向不可以改,指针的值能改 
  const int * const p5=&a;//指针的指向和值都不能改
  //指针和数组的配合使用
  //利用指针访问数组中的元素
  int arr[10]={1,2,3,4,5,6,7,8,9,10};
  int * p6=arr;
  cout<<*p6<<endl;
  p6++;//指针向后移动一个数据单位 
  cout<<*p6<<endl;
  //指针和函数
  //地址传递  
  int m=10;
  int n=20;
  cout<<m<<endl;
  cout<<n<<endl; 
  swap(&m,&n);
  cout<<m<<endl;
  cout<<n<<endl; 
  return 0;
 } 


相关文章
|
8月前
|
存储 安全 Java
2023年Java核心技术第九篇(篇篇万字精讲)(下)
2023年Java核心技术第九篇(篇篇万字精讲)(下)
42 0
|
8月前
|
缓存 安全 Java
2023年Java核心技术第九篇(篇篇万字精讲)(上)
2023年Java核心技术第九篇(篇篇万字精讲)(上)
36 0
|
8月前
|
存储 算法 安全
2023年Java核心技术第十篇(篇篇万字精讲)
2023年Java核心技术第十篇(篇篇万字精讲)
67 0
|
8月前
|
Java
2023年Java核心技术面试第八篇(篇篇万字精讲)
2023年Java核心技术面试第八篇(篇篇万字精讲)
80 0
|
8月前
|
并行计算 安全 Java
2023年Java核心技术第十一篇(篇篇万字精讲)
2023年Java核心技术第十一篇(篇篇万字精讲)
39 2
|
8月前
|
存储 NoSQL Linux
python技术面试题(二十二)
python技术面试题(二十二)
|
8月前
|
存储 安全 Java
2023年Java核心技术面试第六篇(篇篇万字精讲)
2023年Java核心技术面试第六篇(篇篇万字精讲)
50 0
|
9月前
|
移动开发 JavaScript 前端开发
面试题练习第五篇
面试题练习第五篇
62 1