- 博客(13)
- 收藏
- 关注
原创 【Java】使用递归完成水仙花数
总所周知,水仙花数没什么高速的数学解法,尤其是在不确定位数时。为了代码美学(真的有那样的东西吗),我用递归写了个水仙花数。
2024-03-19 21:56:31
386
原创 Java使用判断输入hasNextLine/hasNext等时造成阻塞的原因
不可能返回false,只有true和阻塞两种结果会判断有无输入,并且hasNext一直敲回车而不输入字符会导致线程阻塞。如果直接连续敲回车,那么会判断为true。也有存储功能,从“开始输入”到“判断结束”的过程中的所有输入都将储存,直到之后遇到需要键盘输入的,这些存储的字符串和空格会自动填写给后面的。而空格在next和nextLine上有不同的表现。还有很多同类型的不同方法,可以点击以下链接参考原文。
2024-03-14 20:29:35
627
原创 【C语言】关于对数组的初始化是单个初始化还是集体初始化的问题
memset是给参数str的前n个字节都赋值为c。由于一个int为四个字节,因此,只能给int类型数组赋值0或-1才是准确的。由于C语言语法中,创立数组时并不会对数组进行默认初始化,我们需要自行进行初始化赋值,有可能这过程中又能导致程序结果出错。实际上,memset主要是用于给动态数组进行初始化的。只能给数组0号坐标初始化,其他数组坐标并不会受到影响。由于我常常担心数组初始化不完全,因此我使用函数。这里我们将讨论整数数组初始化的问题。剩下未列出的部分系统会自动赋值为0。赋值的时候是按字节赋值的,所以。
2024-01-21 01:08:08
529
原创 Git log数据过多的退出
当commit(提交)比较多,git log的内容在一页显示不完整,满屏放不下的时候,就会显示冒号。回车(往下滚一行)、空格(往下滚一页)可以继续查看剩余内容。退出:英文状态下 按q可以退出git log状态。
2023-12-28 01:14:33
565
转载 ub行为未定义(指针越界 大小端)
什么是UB。很多在C语言中看似合理的事都可能导致UB,UB是代码中很多BUG的源泉。UB的优点使用未初始化的变量:很多C程序BUG的根源,编译器等很多工具都可以轻松找出这种问题。但C程序中不像JAVA等语言对变量进行清零初始化,也带来了性能的收益,特别是对栈上的数组,malloc申请的内存等需要调用memset的场景。有符号整型溢出:如果有符号整型的算数运算导致溢出,那么结果是未定义的。
2023-12-27 08:50:07
184
原创 博客摘录「 C程序中的未定义行为(Undefined Behavior)」2023年4月13日
这样写程序执行时会存在一个将双精度浮点型变量转化为单精度浮点型变量的过程,因为C语言中默认的浮点型常量类型为double类型。虽然转化的过程可以被某些高端的编译软件过滤掉,但是第二种写法是更稳妥的方式。这个过程可以通过如下的方式去除掉。
2023-12-27 08:30:32
360
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人