编程语言中,循环变量通常都用 i?你知道为什么吗?

news2024/11/16 12:54:09

01

前天,我在朋友圈发了一个问题:

为什么编程中,循环变量通常都是用 i ?

没想到,回复的人这么多!要连翻好几页。

4b430eb20ded3c74c21150bcf75cc552.jpeg

这个问题,有 2/3 的人回答正确,有少部分人知道,但是不太确定。

习惯性用 i 做循环变量,是因为单词 index 意思为:索引

答案我已经放到回复区了,同时我又问了下一个问题:

那你知道吗,为什么第二个循环变量,习惯用 j 呢?

正确答是:

i 的后面是

你要问我为什么的话,只能说:这只是一种习惯而已!而且,很多很多年了。你看 ChatGPT 的回答:

1bfec3bd29d230f04c23e42a0a0d64f3.png

你答对了吗?a3e5a9da888549a0a5a634a6c33fc7ae.png

02

到此为止,你觉得有收获吗?知道了循环变量为什么用 i 、j、k 有什么用呢?

其实啊!我感觉,除了用来吹牛、装逼有用外,没什么卵用。

知道这个所谓的知识,不能提升你的编程水平,特别是新手。

如果去纠结这类没卵用的问题,可以说甚至是有害的!当然,如果是闲聊吹水,又另作他说。

还不如,多研究下:for、for ... in、Array.forEach、Array.map 等的使用,来得实在。

讲一个我亲身经历的故事。

记得我在学校上 C 语言这门课的时候,有一位学霸级的同学(每门课成绩都很好),对 C 语言中的printf这个打印函数感到疑惑。

一直在深究 printf是怎么将字符、数字打印到屏幕上的。如果你对 C 语言不了解,可以将它与 JS/TS 中的 console.log 对等。

我当时,差点被他带坑里,一起跑去问老师。

回复大概这样一句话:

这是编程语言,结合硬件提供的功能接口,不用深究。

你们重点是先把printf的参数、格式化搞明白。

但我的这位同学还不死心printf的原理,一直追问老师,弄得老师也回答不上更多的来。

从此,在我的这位同学心里,总感觉老师的水平不行,自己去钻牛角尖。直到学期结束,没写几行代码,总去纠结一些细枝末节的问题。

有问题是好事,但要分清楚,哪些问题是有意义的?

哪些问题根本就是无解的?

哪些问题是在当下这个层次,不适合触达的?

你可能又要问了,如果分不清楚呢?

那就先拿个小本本记录下来,保持继续前行。

03

人,为什么会出现上述这种情况,你有想过没有?

我有想过,但一直没搞太懂,直到最近看了些书和文章,找到一点点答案。

人的天性是,害怕不确定性。

特别想得到结果,而且是马上就要。

其次是完美主义,藏着掖着,总想着憋个大招、一鸣惊人、一夜暴富。

两个一相结合呢?

就是,如果一件事情短期看不到收益和回报,那是宁可饿死。

哪有什么机遇和风口,这都是那些成功人士,自谦的借口!

所有的成功都是靠一点一滴地持续积累。

点子和想法是『兵』、执行与过程才是『王』。

就像你有一辆兰博基尼,放在车库里,一直不上路,不用脚去踏压油门,永远到达不了目的地。

我再讲一个自己的故事。

如果你关注过晓衡,大概知道我最近开始在学英语,发了一些视频。

其实学英语这件事,我之前是悄悄背地在学,学音标、背单词,生怕别人知道我英语不好。

自从 2021 年底开始,我就尝试通过背单词来学英语,每天10个新词,累计学了2173个词,时长13236分钟。

a576412882e90bccedddffbc2ccae522.png

说实话效果很不好,我一度怀疑自己,我他妈就根本不适合学习英语。

我都四十好几的人了,还学什么鬼英语,简直是吃饱了挣的。

学了这么久还是不会,文章看不懂,每个单词都查了意思,但我理解的却是错的,我简直太笨了。

每当一听到要跟海外同事开会,我就手心冒汗,内心发憷。

坚持了 449 天,直到今年过完年,我做了个决定——放弃背单词!

172df3ab8ec130618ae165069be3cf5e.png

04

我决定不再背单词了,把自己当成小学生,从零开始!

我从书架上找了本《新概念英语1册》这本教材。前几篇课文,我都不知道学了多少遍。

前30课,学起来还算可以,可到了30课以后,我的感受是《新概念英语1册》真的课程设计太好了,全是知识点,而且环环相扣,精妙绝伦(我也是找了些资料辅助学习)。

可是,每一课都是干货,我有点受不了啊!!!学了新的,忘记旧的,让我苦恼不已。

打开书本头头都知道,一关上感觉又啥都不会306ddb458c67abf30e2d6a800d52a36c.png

我想了一下《新概念英语1册》看似入门,但日常对话、交流并不多,内容也不实用,我猜想是犯了一个问题:只学不习

我又从书架上翻出一本英语书《赖世雄美语从头学——入门篇》里面全是对话练习,我听赖世雄老师的话,尽可能将对话演出来,做角色扮演的游戏。

这让我找到些学英语的感觉。后面的故事,这次我就不讲了,大家可看我的视频号、B站账号——逗比晓衡学英语

05

话说回来,我问自己,为什么我要学习英语呢?是我对英语有爱吗?

不,绝对不是!我一度很讨厌它、恨它。

那么,我的动力从何而来呢?

思考......记录下来,再思考......再记录下来......

......

关注过晓衡的老铁,大多都知道,我目前在 Cocos 引擎负责 Cocos Store 资源商城的运营,助力 Cocos Creator 创作者:游戏开发,技术变现!帮助用户,让游戏开发更简单。

Cocos Store 经过这两年多的发展,每年都在以 5~10 倍的速度在成长。从 KOL 到个人开发者,从个人开发者到企业卖家进场,Cocos Store 上的内容日新月异。

而我的工作内容就是,将这些好内容传递给更多需要它的用户,并实实在在为用户解决他们当下的问题。

但是,我面临一个很大的挑战——海外市场!

Cocos Store 目前是支持海外买家使用 PayPal 进行支付的。

只要你在 Store 上的商品设置上了英文商品名、价格、商品描述,审核通过后就能展示在英文商店中,获得美元订单收益。

随着 Cocos Store 上的商品越来越丰富,有个尴尬的问题出现了。

海外用户发现,中文商品比英文商品多很多,而且他们想购买的商品大多是中文的。

他们没有微信、支付宝,无法购买!!!

在与海外用户、同事的沟通过程中,我一度感到害怕,效率低下,让我很是难受。

再者就是,能将 Cocos 引擎推向海外全世界,能帮助 Cocos 社区中的开发者挣到美刀,想想都激动,本能地按耐不住。

我猜想,是这种一直难受、激动,还有负责,驱使我产生了学英语的持续动力。

绝对不是爱好,如果是爱好的话,它多半已经被毁了。就像玩游戏一样,自从开始做游戏了,我玩游戏的爱好已经逐渐不在了。

不知不觉又啰嗦了这么多,今天的分享就到这里,如果你看到这里,感谢点个赞再走吧!

哦!再说一句:有人后台问,怎样才能长期坚持去做一件事情?

我想了下,就用这篇文章想传递的思想:赋予你要做的这件事极大的意义,让你一想到它,就感到激情澎湃!

d6ea8b06cb2200767c9720260361fd4a.jpeg

我是晓衡,关注我,让我们一起共同成长!

往期精彩

Creator 3.x 入门修炼指南  

CocosStore卖家成长指南

一个玩游戏的失足青年的挣扎过程(1/4)

一个玩游戏的失足青年的挣扎过程(2/4)

坚持做一个长期主义者

一个公式35岁让自己过的越来越好!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/547126.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Hadoop基础学习---2、Hadoop概述

1、Hadoop概述 1.1 Hadoop是什么? 1、Hadoop是一个又Apache基金会所开发的分布式系统基础架构。 2、主要解决海量数据的存储和海量数据的分析计算。 3、广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈。 1.2 Hadoop 优势(4高…

六级备考28天|CET-6|翻译井冈山|2021年12月|8:20~9:40+ ~10:17

目录 四级翻译5篇必练真题 六级翻译5篇必练真题 井冈山 四级翻译5篇必练真题 ①2023年3月一卷①自驾游 ②2022年 12月一卷③立秋 ③2022年6月一卷①拔苗助长 ④2021年 12月一卷②大运河 ⑤2021年6月一卷③普洱茶 六级翻译5篇必练真题 ①2023年3月一卷②郑和下西洋 ②2022年…

微服务多模块:Springboot+Security+Redis+Gateway+OpenFeign+Nacos+JWT (附源码)仅需一招,520彻底拿捏你

可能有些人会觉得这篇似曾相识,没错,这篇是由原文章进行二次开发的。 前阵子有些事情,但最近看到评论区说原文章最后实现的是单模块的验证,由于过去太久也懒得验证,所以重新写了一个完整的可以跑得动的一个。 OK&#…

nvidia-smi 失效解决

服务器重启后,跑模型发现: RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False. If you are running on a CPU-only machine, please use torch.load with map_locationtorch.device(cpu) to ma…

Linux常用命令——hping3命令

在线Linux命令查询工具 hping3 测试网络及主机的安全 补充说明 hping是用于生成和解析TCPIP协议数据包的开源工具。创作者是Salvatore Sanfilippo。目前最新版是hping3,支持使用tcl脚本自动化地调用其API。hping是安全审计、防火墙测试等工作的标配工具。hping优…

【开源项目】Nepxion Aquarius实现分布式锁、缓存、ID生成、限速的源码解读

项目地址 项目地址 https://toscode.gitee.com/nepxion/Aquarius 项目介绍 Nepxion Aquarius是一款基于Redis Zookeeper的分布式应用组件集合,包含分布式锁,缓存,ID生成器,限速限流器。它采用Nepxion Matrix AOP框架进行切面架构…

天工开物 #6 Git 分支管理与版本发布

Git 版本管理系统由 Linux 的作者 Linus Torvalds 于 2005 年创造,至今不到二十年。 起初,Git 用于 Linux Kernel 的协同开发,用于替代不再提供免费许可的 BitKeeper 软件。随后,这一提供轻量级分支的分布式版本管理系统得到了开源…

产品经理被气的脸都绿了!

见字如面,我是军哥! 本来今天不想发文了,想躺平一下,毕竟今天周五了嘛。 可是今天早上一位买了我《技术人核心能力》的程序员学员发来私信,说他给产品经理上了一课,声称产品经理当时脸都绿了,并…

浅浅的理解MVI

MVI 的概念 官网解释: https://developer.android.google.cn/topic/architecture?hlzh-cn MVI在架构分层上和MVP没有本质区别,但区别主要体现在架构风格和编程思想上。 MVI 是 Model-View-Intent 的缩写,它也是一种响应式 流式处理思想的…

【Linux高级 I/O(2)】如何使用阻塞 I/O 与非阻塞 I/O?——select()函数

上次我们虽然使用非阻塞式 I/O 解决了阻塞式 I/O 情况下并发读取文件所出现的问题,但依然不够完美,使得程序的 CPU 占用率特别高。解决这个问题,就要用到本文将要介绍的 I/O 多路复用方法。 何为 I/O 多路复用 I/O 多路复用(IO m…

数据结构-时间复杂度和空间复杂度

时间复杂度和空间复杂度 算法效率时间复杂度空间复杂度表示方法(大O的线性表示)举例说明时间复杂度举例说明空间复杂度举例说明冒泡排序的时间和空间复杂度递归情况下的时间和空间复杂度两个例子 算法效率 算法(Algorithn)是指用来…

Spring MVC的核心类和注解

DispatcherServlet DispatcherServlet作用 DispatcherServlet是Spring MVC的核心类,也是Spring MVC的流程控制中心,也称为Spring MVC的前端控制器,它可以拦截客户端的请求。拦截客户端请求之后,DispatcherServlet会根据具体规则…

chatgpt赋能Python-python3接口自动化

Python3接口自动化:提升测试效率的利器 Python是一种高级编程语言,广泛应用于Web开发、数据科学、机器学习等领域。近年来,Python在接口自动化测试领域也变得越来越受欢迎。 Python的易读性、可扩展性以及模块化的特性,使得它成为…

Elasticsearch环境搭建(Windows)

一、介绍 布式、RESTful 风格的搜索和分析。 Elasticsearch 是位于 Elastic Stack 核心的分布式搜索和分析引擎。Logstash 和 Beats 有助于收集、聚合和丰富您的数据并将其存储在 Elasticsearch 中。Kibana 使您能够以交互方式探索、可视化和分享对数据的见解,并管…

手撕code(1)—— 排序算法

文章目录 前言1 冒泡排序2 选择排序3 插入排序4 快速排序5 归并排序6 堆排序7 希尔排序 前言 算法动画 时间复杂度分析 从小到大排序 1 冒泡排序 被动的将最大值送到最右边 1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2、对每一对相邻元素作同…

Vite+Vue+iClient for Leaflet引入并实现MapV/Eharts第三方可视化库示例

作者:gaogy 文章目录 背景一、使用Vite构建Vue3JavaScript项目二、搭建iClient for Leaflet开发环境三、第三方可视化库Echarts的使用四、第三方可视化库MapV的使用五、其他地图库 背景 最近很多小伙伴咨询关于基于Vue3框架搭建iClent开发环境并使用Echarts与MapV等…

OPEN AI角色插件通道开放接入支持各种细分领域对话场景模型一键接入AI 智能

相信还是有很多伙伴不了解OPEN AI平台 ,这里在细说一下 大家知道ChatGPT, 或者百度文心一言 阿里通意千问 包括各种其他的AI 聊天或者画图,等应用层出不穷。 但是我们要自己实现自己 语言大模型,或者说是人工智能应用能不能。 有实力当然可…

C++小项目之文本编辑器mynote(1.0.0版本)

2023年5月19日,周五晚上: 今天晚上突然想写一个运行在命令行上的文本编辑器,因为平时写文本时老是要创建新的文本文件,觉得太麻烦了。捣鼓了一个晚上,才选出一个我觉得比较满意的。我把这个程序添加到了系统环境变量中…

C语言指针学习笔记

1-二维数组指针 int a[3][4]a代表二维数组首元素的地址,此首元素不是一个简单的整形元素,而是由4个整形元素组成的一维数组,因此a代表的是首行(序号为0的行)的起始地址。a1代表序号为1的行的起始地址。a指向a[0], …

一个月50场面试,跑的慢就抢在别人前面!

300万字!全网最全大数据学习面试社区等你来! 今天的主人公也是一个应届生新人拿到满意offer的案例。 下面是一些聊天记录和面经,这名同学做的非常好的一个点,他把个人项目中的所用到的技术栈和项目具体的业务流程图以及用到的技术…