指针初探
来源:互联网 发布:财富共赢集团 知乎 编辑:程序博客网 时间:2024/06/04 19:45
放下C和C++很久,再次拿起来最值得一看的当然是指针,复习一遍的速度虽然是很快的,但长时间总会忘记,这里就简要的记录下。C和C++两者在指针上大体是相似的,这里就是用C++为例来写一下,其中提到一些指针的基本用法和要注意的小细节。
//// pointer.cpp// FirstMacOSCpp//// Created by NicolasYam on 2017/11/2.// Copyright © 2017年 NicolasYam. All rights reserved.//#include <iostream>int main(int argc, const char * argv[]) { using namespace std; // 赋值变量地址并显示 int num = 1024; int* addr = # cout << "num addr = " << addr << endl; // 通过指针修改值本身 *addr += 1; cout << " *addr = " << *addr << endl; cout << "num = " << num <<endl; /* 在不使用new关键字的情况下不要用以下方法初始化指针 long* addr; *addr = 23333; 此时addr声明时是未知的,赋值后会覆盖原有在addr上的数据 而new则不同,其会找到可以分配的内存进行分配 */ //使用new来分配内存, delete释放内存 int* pt = new int; *pt = 1001; double* pd = new double; *pd = 65535.0; cout << "addr " << pt << " is " << *pt << endl; cout << "sizeOf *pt = " << sizeof(*pt) << endl; cout << "addr " << pd << " is " << *pd << endl; cout << "sizeOf *pd = " << sizeof(*pd) << endl; delete pt; delete pd; //使用new和指针创建动态数组 int* arr = new int[10]; arr[0] = 101; arr[2] = 103; cout << "arr[0] = " << arr[0] << " arr[1] = " << arr[1]<<endl; arr += 1; cout << "arr[0] = " << arr[0] <<endl; arr -= 1; delete [] arr; //指针算术 //C++中对于数组名和指针的表示如arr[i],都将转换为*(arr + i) //指针加1,增加的值等于指向类型所占字节数 double wage[3] = {10000.0, 20000.0, 30000.0}; double* pw = wage; cout << "wage = " << wage << " pw = " << pw << endl; cout << "*(pw + 1) = " << *(pw + 1) << endl; pw += 1; cout << "pw + 1 = " << pw << endl; //sizeof对于数组和指针的区别 //对于数组的到的事数组的长度,指针则是指针的长度 cout << "sizeof wage = " << sizeof(wage) << " sizeof pw = " << sizeof(pw) << endl; return 0;}
阅读全文
0 0
- 初探指针
- 指针初探
- C语言指针初探
- 初探二维指针
- C语言指针初探
- 引用和指针初探
- (1)指针初探
- 智能指针初探
- Fortran指针初探
- c++指针初探
- 智能指针初探
- 指针和数组关系初探
- 理解C指针:(一)指针初探
- c语言指针初探 一指针运算与多级指针
- 二级指针及其内存模型初探
- 一维数组(数组指针初探)
- c语言指针初探 一 内存管理
- C++标准库---智能指针auto_ptr初探
- 多叉树应用(多叉树创建, 遍历)
- windows10 dpi fix真的有用吗?win10 dpi fix怎么用
- XGBoost参数完全指南
- 《编程之美》笔记---1
- yolo2 检测到的物体输出2
- 指针初探
- ssh 免密码登陆配置
- zookeeper学习(3)
- 目标检测(Google object_detection) API 上训练自己的数据集
- Centos7修改docker的Data Space Total大小
- 小记--生产服务优化过程
- 库克:iPhone X只是一天一杯咖啡钱
- jquery easyui datagrid 分页 详解
- JN项目-风采展示增加下拉查询条件