c(非c++) --- 函数形参添加默认值-编程思维

一般情况下,只有C++的函数支持形参添加默认值,但是C语言可以通过可变参数宏实现   先定义的一个被执行的函数 void _fun(int val) { printf("fun input val:%d", val); } 在调用函数时不输入参数,希望系统输入默认的参数值 定义一个可变参的宏定义 #define fun(...) _fun((default_val, ##__

简单对比java、python、go、rust等常见语言计算斐波拉契数的性能-编程思维

前言 最近简单学了下Rust,以我这种菜鸟水平,没感受到什么安全、性能什么方面的优势,只觉得概念太多,编译各种报错。暂时也写不出来什么玩法,索性对比下各种学过的语言的性能。部分语言很早之前学过,很久不用就忘了,所以是用GPT写的。但运行逻辑很简单,所以应该没什么影响。具体的代码可以见“实验代码”部分。 对比方法是在同一台机器上计算斐波拉契数,获取运行时长和内存占用。对比方法很野鸡,看看当个乐就行

programming abstractions in c阅读笔记:p312-p326-编程思维

《Programming Abstractions in C》学习第77天,p312-p326,总计15页,第7章完结。 一、技术总结 第7章主要讲算法分析——引入时间复杂度这一概念来评估算法的快慢。时间复杂度使用大O符号来表示。 第7章以排序算法为示例,包含:选择排序,归并排序以及快速排序,这些基本的排序算法都是我们要掌握的,虽然工作中较少用到,但面试时遇到的概率还是很大的,最好能手写出来。书

programming abstractions in c阅读笔记:p306-p307-编程思维

《Programming Abstractions in C》学习第75天,p306-p307总结,总计2页。 一、技术总结 1.Quicksort algorithm(快速排序) 由法国计算机科学家C.A.R(Charles Antony Richard) Hoare(东尼.霍尔)在1959年开发(develop), 1961年发表(publish)。 这里吐槽下维基百科的中文介绍:"在平均状

xmake v2.8.7 发布,新增 cosmocc 工具链支持,一次编译到处运行-编程思维

Xmake 是一个基于 Lua 的轻量级跨平台构建工具。 它非常的轻量,没有任何依赖,因为它内置了 Lua 运行时。 它使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。 我们能够使用它像 Make/Ninja 那样可以直接编译项目,也可以像 CM

strlen和sizeof区别-编程思维

strlen 和 sizeof 是 C/C++ 中用于获取字符串长度或数据类型大小的两个不同的操作。 1.strlen: strlen 是在 C 语言和 C++ 中用于获取以空字符 ('\0') 结尾的字符串长度的函数。 它接受一个指向字符串的指针,并遍历该字符串,直到遇到空字符为止,计算出字符串的长度(不包括空字符)。 strlen 返回的是字符串的字符数,即有效字符的个数,不包括空字符。

关于编写c时的调试--vs,vscode,dev-c++-编程思维

1.问题 VS最大的问题是不支持scanf函数,后面的调试部分我就没试了,主要用VS来写C++ VSCODE是服了他的C/C++插件,我死活卡在debug中scanf的输入部分,集成终端根本无法输入, 在调了lanuch.json和tasks.json中"externalConsole": true 这一项想调出外部终端,调不出来??? 感觉上还是DEV-C++好用一点 2.解决方式 这里主要讨

p2006 赵神牛的游戏-编程思维

赵神牛的游戏 题目描述 在 DNF 中,赵神牛有一个缔造者,他一共有 \(k\) 点法力值,一共有 \(m\) 个技能,每个技能耗费的法力值为 \(a_i\),可以造成的伤害为 \(b_i\),而 boss 的体力值为 \(n\),请你求出它放哪个技能,才可以打死 boss。 当然,赵神牛技术很菜,他一局只放一个技能,不过每个技能都可以放无数次。 输入格式 第一行有三个整数,分别表示 \(k,m

p3717 [ahoi2017初中组] cover-编程思维

[AHOI2017初中组] cover 题目背景 以下为不影响题意的简化版题目。 题目描述 一个 \(n\times n\) 的网格图(标号由 \(1\) 开始)上有 \(m\) 个探测器,每个探测器有个探测半径 \(r\) ,问这 \(n\times n\) 个点中有多少个点能被探测到。 输入格式 第一行 \(3\) 个整数 \(n,m,r\)。 接下来 \(m\) 行,每行两个整数 \(x,

问题--vscode终端中文乱码问题-编程思维

1.问题 问题如下,终端出现中文乱码问题 根本原因是VSCODE是UFT-8编码,而终端显示的中文则是GBK编码 网上很多都是改VSCODE为GBK编码,但改终端为UFT-8也挺方便 2.解决方法 1.在终端输入chcp 65001 在重启vscode或者重新打开项目文件时需重新再vscode的虚拟终端输入chcp 65001,但是在重启后或者一些状况下需要重复配置。。。 2.直接改配置!