在刚开始学C语言的时候,老师是这么教我的 :*是指针,**是指向指针的指针。int* p 的意思是p是一个指针,存放的内容是一个int类型……这些大概是书上对*的解释,最基本的例子是 int* p; *p = 1;  在输出*p会得到 1。我到现在还是感觉奇怪的很。

这里不想和细致的研究这些问题,只是想说说大概怎么使用*这个东西。其实在用C去解决一些算法问题的时候只要记住关于*的下面两个使用方法就足够了。

*与数组

动态一维数组

int* data = (int*) malloc (sizeof(int) * size); size是你想动态申请的数组元素个数。

动态二维数组

int** data = (int**) malloc(sizeof(int*) * row );//row是行数

for(int i = 0 ; i < col ;i++)

{

data[i] = (int*) malloc(sizeof(int) * col)  //col是列数

}

方便记忆

1.读,int* 直接读成 int数组,int**则读成数组的数组  = 二维数组。

2.同,malloc前面的强制类型转换和前面相同

3.降级,sizeof里的参数永远比前面少一个*。(我现在写程序的时候确实是这么想的,不会去从什么地址之类的考虑)

*与&

我学习的时候是用一句话去记的,*(星)是按图索骥,&是取地址。

什么是按图索骥?图就是一个变量的地址,*的作用是根据一个地址去取值,大概的意思就像按图索骥。

&任何一个标识符,会得到程序为这个标识符分配的地址。

C语言中的* 简单记忆方法相关推荐

  1. 在c语言中log函数的作用,C++_在C语言中使用对数函数的方法,C语言log()函数:返回以e为底的 - phpStudy...

    在C语言中使用对数函数的方法 C语言log()函数:返回以e为底的对数值头文件: #include log() 函数返回以 e 为底的对数值,其原型为: double log (double x); ...

  2. Go语言中的字符串拼接方法介绍

    本文介绍Go语言中的string类型.strings包和bytes.Buffer类型,介绍几种字符串拼接方法. 目录 string类型 strings包 strings.Builder类型 strin ...

  3. 战棋游戏中的简单策略方法:基于群表示论的思想

    战棋游戏中的简单策略方法:基于群表示论的思想 最近在开发一款自娱自乐的基于上世纪30年代历史背景的战棋游戏,需要为其设计一个策略算法,我一开始就想可能用比较传统的动态规划,恰逢本周周一周二中科院数学所 ...

  4. 【C语言中清空文件的方法】

    C语言清空文件内容 C语言中清空文件的方法 C语言中清空文件的方法 C语言中清空文件的方法很简单. 只要以 可写 的方式打开文件,就能将这个文件清空 #include <stdlib.h> ...

  5. 备忘录方法代码c语言,在C语言中操作备忘录的方法

    在C语言中操作备忘录的方法 一:fopen()中的第二参数(模式参数)的格式详解 可用来组合的字符有:r,w,a,t,+,b,它们分别代表的意义为: r: read; w: write; a: app ...

  6. Go语言中字符串的查找方法小结

    这篇文章主要介绍了Go语言中字符串的查找方法小结,示例的main函数都是导入strings包然后使用其中的方法,需要的朋友可以参考下 1.func Contains(s, substr string) ...

  7. 单片机c语言字符,单片机C语言中变量的定义方法解析

    描述 1.C语言中变量的定义方法 -C语言中变量定义语法为: #pragma rambank0 :即以关键词#pragma开始,rambank0指明资料区块为第0块. unsigned char m_ ...

  8. 一步带你了解C语言中++、--的使用方法!

    一步让你了解C语言中++.--的使用方法! 一.前言 二.++.- -运算符 (1)前缀形式和后缀形式单独使用,并未出现在表达式中 (2)前缀形式后缀形式放入表达式中 三.代码实现 一.前言 C语言中 ...

  9. 用c语言编译对数函数,在C语言中使用对数函数的方法

    在C语言中使用对数函数的方法 C语言log()函数:返回以e为底的对数值头文件: #include log() 函数返回以 e 为底的对数值,其原型为: double log (double x); ...

最新文章

  1. R语言基于MASS包中的shuttle数据集以及neuralnet包构建神经网络模型
  2. SAP document builder功能一览
  3. 你的实力就等于别人对待你的态度
  4. 计算机网络---ICMP、IGMP协议
  5. angular 控件css_Angular父组件内修改子组件的样式
  6. VB shell执行程序,直到执行完毕
  7. 【免费毕设】基于PHP实现的网上留言管理系统的设计(源代码+论文)
  8. [Oracle 9i] Case Expression and Case Statement in 9i
  9. 区块链+”来了,区块链金融将如何颠覆传统金融
  10. 终于把AI换脸的原理搞清了
  11. VUE系列之element表单el-form-item自定义label
  12. 哇哦,它让美味随心所“鲜”
  13. Jetson Agx Orin使用最正确的方式安装torch1.11.0,torchvision0.12.0,torchaudio0.11.0保姆级教程
  14. Kubernetes容器云平台技术方案
  15. iOS 使用HMAC
  16. memcached redis基本操作
  17. Android手机输入法按键监听-dispatchKeyEvent
  18. 2022年武汉中级工程师职称申报条件、申报材料要求和申报流程是什么?
  19. 【工具】XP超级终端的设置与使用
  20. 2020年中青杯全国大学生数学建模竞赛题目【本科组】——纪念第一次训练模型!

热门文章

  1. 3D和VR有关概念及原理整理;3D眼镜,3D视频,VR视频等
  2. 理论总结-三次样条插值
  3. (OJ)Java面向对象-构造方法
  4. Johnson-Trotter算法求全排列
  5. 一款仿网易云音乐Java开源系统(附源码)
  6. vue中使用数组方法push
  7. 阿里开源消息中间件MetaQ(RocketMQ)简介
  8. 何为非侵入式负荷识别-事件检测
  9. datatables 小试牛刀
  10. c# 调用restful json_SSM实现RESTFul风格的CURD操作