i++、++i 的区别
时间:2019-01-17
本文章向大家介绍i++、++i 的区别,主要包括i++、++i 的区别使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
在准备字符串相关的编程题练手的时候,编程过程中发现了一个小问题
代码一:
char *mystrcpy(char *str, const char* src)
{
if(str == NULL || src == NULL)
return NULL;
char *addres = str;
while(*src != '\0') //[1]
*str++ = *src++;
return addres;
}
代码二:
char *mystrcpy(char *str, const char* src)
{
if(str == NULL || src == NULL)
return NULL;
char *addres = str;
while((*str++ = *src++) != '\0'); //[2]
return addres;
}
这两个都是字符串拷贝函数,两个代码是有微小差异的!
int main()
{
const char *src = "world";
char str[] = "helpo world";
char * p = mystrcpy(str, src);
show(p);
return 0;
}
差异在代码有注释!
while(while((*str++ = *src++) != '\0');
看不懂这行代码,可以先看个简单的好描述的代码
int i = 0;
while(i++ < 10);
printf("%d\n",i);
这个代码输出i为11, i++没有出又括号前i的值是没有加一的,出了右括号i的值才会进行加一操作,可以在ide中或者用gdb调试一下
字符串拷贝函数就是这样,while((*str++ = *src++) != '\0'); 这行代码将'\0' 拷贝给str,出了循环的右括号后str进行加一,循环结束。
++i,则是加加后直接把值赋给i
坚持✊
- R语言进行中文分词,并对6W条微博聚类
- 只言片语分析datapump的工作原理(r2第18天)
- 开发 | TensorFlow全新的数据读取方式:Dataset API入门教程
- 用python实现支持向量机对婚介数据的用户配对预测
- SQL*Loader-805的解决(r2笔记36天)
- 用python实现决策树ID3算法,对隐形眼镜类型预测
- 用GA算法设计22个地点之间最短旅程-R语言实现
- 开发 | 谷歌发布TensorFlow 1.4版本:支持分布式训练,迎来三大新变化
- 创建用户时的密码校验问题(r2第34天)
- 巧用xmltype解析clob数据(r2笔记33天)
- R语言-中国各城市PM2.5数据间的相关分析
- 妹子如何运用R语言数据分析选择心仪的对象?
- 生产环境大型sql语句调优实战第一篇(二) (r2笔记32天)
- 生产环境大型sql语句调优实战第一篇(一) (r2笔记第31天)
- 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 数组属性和方法
- 【一天一大 lee】二叉搜索树的最小绝对差 (难度:简单) - Day20201012
- 有奖互动 | 腾讯云开发者社区 3 周年庆,我过生日,送你们礼物 ~
- 【一天一大 lee】分割等和子集 (难度:中等) - Day20201011
- 【一天一大 lee】寻找两个正序数组的中位数 (难度:困难) - Day20201003
- 【一天一大 lee】颜色分类 (难度:中等) - Day20201007
- 【一天一大 lee】树中距离之和 (难度:困难) - Day20201006
- 在Spring项目中以多线程的方式并发执行,异步处理任务。解决统计、累加类业务的例子。
- 【十分钟教会你汇编】MIPS编程入门
- 实践中如何优化MySQL(收藏)
- Framework掌握不全被面试官怼?Android字节跳动大牛的精编解析笔记带你系统学习!
- 路由策略中的IP-Prefix你了解多少?
- 路由策略——Route-policy
- 如何合理设置线程池大小
- 前端设计模式之责任链模式
- 项目实战|基础请求封装