指针巩固
时间:2019-10-14
本文章向大家介绍指针巩固,主要包括指针巩固使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1 #include <iostream> 2 using namespace std; 3 int main() 4 { 5 int num = 0; 6 int* p = # 7 cout << p << "\t" << &num << endl;//0x6dfee8 0x6dfee8 8 cout << *p << "\t" << num << endl;//0 0 9 return 0; 10 }
1 #include <iostream> 2 using namespace std; 3 int main() 4 { 5 int num = 0; 6 int* p = # 7 cout << p << "\t" << &num << endl;//0x6dfee8 0x6dfee8 8 cout << *p << "\t" << num << endl;//0 0 9 10 char ch = 'd'; 11 char* p_ch =&ch; 12 //char* 使p_ch会被当成字符串指针打印 13 cout << p_ch << "\t" << *p_ch << endl;//d d 14 cout << (void*)p_ch << "\t" << *p_ch << endl;//0x6dfee3 d 15 return 0; 16 }
1 #include <bits/stdc++.h> 2 using namespace std; 3 int main() 4 { 5 int a = 10; 6 int &b = a; 7 cout << b << a << endl;//1010 8 //int &c=10;//报错,引用对象不可以赋值为一个常数。 9 const int &d = 10; 10 cout << d << endl;//10 11 //加上const是常量引用,不加是变量引用 12 //引用相比于指针安全,所以推荐使用引用 13 return 0; 14 }
引用变量和原来的变量指向的内存空间一致。
数组名确实是数组的首地址,但是在sizeof(array)下是数组类型,大小是数组所占内存大小
1 #include <bits/stdc++.h> 2 using namespace std; 3 int main() 4 { 5 int num[4] = {1,2,5,4}; 6 int *p_a = num; 7 int *p_b = &num[0]; 8 cout << p_a[0] << "---" << p_b[1] << endl; 9 cout << *(++p_a) << "---" << *(p_b + 1) << endl;//*++num是不对的,不可以对数组名进行加减 10 11 return 0; 12 }
1 #include <bits/stdc++.h> 2 using namespace std; 3 int main() 4 { 5 int num[5]; 6 int *nums = new int[5]; 7 cout << sizeof(num) << '\t' << sizeof(nums) << endl;//20 4 8 //一个是数组,一个是变量。 9 10 delete [] nums; 11 nums = nullptr;//指向空指针,否则就成为野指针。容易内存泄漏 12 int* ptr = new int; 13 delete ptr; 14 ptr = nullptr; 15 return 0; 16 }
1 #include <bits/stdc++.h> 2 using namespace std; 3 int main() 4 { 5 int (*p)[3] = new int[3][3]; 6 p[1][1]=987; 7 for(int i = 0;i < 3; i++){ 8 for(int j = 0;j< 3; j++){ 9 cout << p[i][j] <<"=="<< *(*(p+i)+j) << " || ";//两种输出方法 10 } 11 cout << endl; 12 } 13 return 0; 14 }
原文地址:https://www.cnblogs.com/henuliulei/p/11673222.html
- VList data structures in C#
- 编程思想 之「语言导论」
- 编程思想 之「对象漫谈」
- Github 项目推荐 | TensorFlow 概率推理工具集 —— probability
- Github 项目推荐 | 用于 C/C++、Java、Matlab/Octave 的特征选择工具箱
- Mercari Price 比赛分享 —— 语言不仅是算法和公式而已
- Github 项目推荐 | GAN 的 Keras 实现案例集合 —— Keras-GAN
- Github 项目推荐 | 微软开源 MMdnn,模型可在多框架间转换
- 半自动化运维之动态添加数据文件(一) (r5笔记第55天)
- 半自动化运维之动态添加数据文件(二) (r5笔记第56天)
- 11g Active DataGuard初探(r5笔记第54天)
- Github 项目推荐 | 用于构建端对端对话系统和训练聊天机器人的开源库 —— DeepPavlov
- 我身边的一些数据库事故 (r5笔记第52天)
- 一个清理脚本的改进思路(r5笔记第51天)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 使用SAP BSP应用运行Vue
- 微信开发系列之六 - 使用微信OAuth2 API读取微信用户信息,显示在SAP UI5里
- 微信开发系列之五 - 将SAP UI5应用嵌入到微信中
- 微信开发系列之四 - 将SAP C4C的数据更改通知发送到微信公众号上
- 微信开发系列之三 - 在微信公众号里发起SAP C4C Account的创建
- 微信开发系列之二 - 在微信公众号里开发一个自动应答的图灵机器人
- 微信开发系列之一 - 微信公众号开发的开发环境搭建
- SAP Commerce开发之如何找到某个页面对应的JSP实现页面
- 如何用代码读取SAP CRM的Categorization Schema
- 如何使用代码创建SAP CRM Service Request subject
- 微信开发系列之八 - 微信公众号的地图集成
- vivo 悟空活动中台 - 栅格布局方案
- 使用literal或者绑定变量执行SAP HANA SQL语句
- dotnet OpenXML 如何判断是形状还是文本
- dotnet 执行 docker 容器 error MSB4018 CreateAppHost 任务意外失败可能原因