C语言指针学习中易犯的错误
1、向null地址处copy数据
char *str = NULL;
strcpy(str,"aaaaabbbbb");
错误!
NULL是操作系统保护的空间,不能往里面拷贝数据;
2、void Swap(int a,int b)
//错误案例
//不能实现实参a,b的互换
void Swap(int a,int b)
{int tmp = a;a = b;b = tmp ;
}
在函数调用时,把实参取地址传给形参
用1级指针形参,可以间接修改0级指针(实参)的值
用2级指针形参,可以间接修改1级指针(实参)的值
.
.
.
用n级指针形参,可以间接修改n-1级指针(实参)的值
正确案例:
void Swap(int *a,int *b)
{//int *tmp = NULL; 向null地址处copy数据,出错;解决办法如下行代码所示int *tmp = (int *)malloc(sizeof(int));*tmp = *a;*a = *b;*b = *tmp ;free(tmp);
}
C语言指针学习中易犯的错误相关推荐
- 5个golang中易犯的错误
点击上方蓝字关注我们 To err is human,to forgive divine. -Alexander Pope 初学golang我们经常会犯一些错误,虽然它们不会产生类型检查的异常,但是它 ...
- javascript中易犯的错误有哪些
javascript中易犯的错误有哪些 一.总结 一句话总结: 比如循环中函数的使用 函数中this的指向谁(函数中this的使用) 变量的作用域 1.this.timer = setTimeout( ...
- java犯的小错误_[Java教程]十个JavaScript中易犯的小错误,你中了几枪?
[Java教程]十个JavaScript中易犯的小错误,你中了几枪? 0 2015-06-01 12:00:19 序言 在今天,JavaScript已经成为了网页编辑的核心.尤其是过去的几年,互联网见 ...
- C语言指针学习与使用
C语言指针学习与使用 计算机存储 想要更好的使用指针,需要对计算机的存储有一定的概念和了解.下面的图片中展示了计算机的硬件结构: 存储设备除了上述的主存储器外,还有其他的一些在执行程序时可能会用到的存 ...
- c语言程序设计学习中的问题与对策,C语言程序设计学习中的问题与对策.pdf
C语言程序设计学习中的问题与对策 第 20 期 计 算 机 教 育 2010 年 10 月 25 日 Computer Education No.20 Oct.25,2010 83 文章编号:1672 ...
- Android4.0 Design之UI设计易犯的错误2
想成为Android的杰出开发工程师,不懂得Android的设计规则怎么可以,Android4.0问世后谷歌公司为Android程序员规范了一系列的设计原则,不要再盲目的模仿IOS的设计了,因为And ...
- css html 对错号,HTML_DIV+CSS编码时易犯的错误,CSS+DIV是网站标准(或称“WEB - phpStudy...
DIV+CSS编码时易犯的错误 CSS+DIV是网站标准(或称"WEB标准")中常用的术语之一,通常为了说明与HTML网页设计语言中的表格(table)定位方式的区别,因为XHTM ...
- 7个跑步易犯的错误和解决办法
似乎所有人都认为跑步是一种非常简单的锻炼方式,然而,其实不然,跑步涉及到许多专业知识.错误的跑步,不仅影响锻炼效果,而且还容易导致受伤. 1.鞋子不合适 问题:穿着太旧的跑步鞋或者类型不合适的运动鞋容 ...
- Linux管理员易犯的错误
对于初入linux的管理员们来说,迁移到Linux是一场噩梦,而且在Linux管理中稍微不小心就会出错,如果不避免这些错误的话就会给我们的网络和系统带来风险,那么我们现在就去看看Linux管理员易犯的 ...
最新文章
- python解一元二次方程步骤-一元二次方程解法的实现(Python)
- 常考数据结构与算法:括号序列
- Leetcode 63. 不同路径 II (每日一题 20210903)
- 高等数学:第二章 导数与微分(3)函数微分 近似计算
- 快速广义的形态分量分析 matlab,独立分量分析法降噪技术研究
- MySQL设置从库只读模式
- linux的静态编译elf无法调试,[翻译]自己动手编写一个Linux调试器系列之4 ELF文件格式与DWARF调试格式 by lantie@15PB...
- 《JavaScript精粹(修订版)》——1.6 使用括号和分号结束符(一致的编码方式)...
- SAP SolMan 严重漏洞的自动化 exploit 代码遭公开
- [原创]独立模式安装Hive
- JAVA命令行运行时设置参数
- 数学建模——相关系数(1)——皮尔逊相关系数(Person)
- 西数宣布将绿盘并入蓝盘
- 关于两个数相乘, 求其为多少进制
- php 实现邮件定时发送,php定时发送邮件解决方案
- java习题4_6水仙花数是指其个位、十位和百位三个数字的立方和等于这个三位数本身,求出所有的水仙花数。
- 超越ConvNeXt!Conv2Former:用于视觉识别的Transformer风格的ConvNet
- 判断滚动条是上滑还是下滑
- Matlab:创建、串联和扩展矩阵
- Windows扫雷游戏代码详解【memset函数】
热门文章
- java web创意_javaweb有什么能做的项目,最好比较有创意一点
- 使用H5P插件在WordPress中创建交互式内容
- 黄埔培训心得与体会。
- ABAVN和F-92资产报废和出售测试
- nvcc fatal : Value ‘sm_XX‘ is not defined for option ‘gpu-architecture‘
- 连锁电商BC一体化运营,F2B2b2C平台搭建思路
- kuberSphere搭建中间件
- GameEngine(游戏引擎从零到实现)
- php怎么卸载_如何卸载已经安装的php
- 给项目经理提高情商的4个建议