怎么就死循环了!

简介: 怎么就死循环了!c语言在进行运算的时候,一个有符号整数和一个无符号整数参与运算,结果将是一个无符号数。这也是常见的无解,一不小心就写出了死循环。当然,这里的i-DELTA直接写为i-4 是没问题的,因为4默认是有符号数,除非你加上U#include void main(){ int...

怎么就死循环了!

c语言在进行运算的时候,一个有符号整数和一个无符号整数参与运算,结果将是一个无符号数。这也是常见的无解,一不小心就写出了死循环。
当然,这里的i-DELTA直接写为i-4 是没问题的,因为4默认是有符号数,除非你加上U

#include <stdio.h>

void main(){
    int i=30;
    #define DELTA sizeof(int)
    for(;i-DELTA>=0;i--){
        printf("%d\n",i);
    }
}

类似的例子在go中是行不通的,go干脆直接报错,说无符号数不能和有符号数一起运算,只能进行类型转换以后再运算。看来go还是很明智的避免了这些陷阱啊!

目录
相关文章
|
27天前
|
监控 测试技术 程序员
解决线程死循环问题的有效方法
作为开发者想必都清楚,多线程应用程序的开发为我们日常开发工作中提供了并发执行任务的能力,但线程死循环问题却是一个常见而令人头疼的挑战,因为线程死循环可能导致系统的不稳定性、资源浪费以及应用程序的异常运行,所以准确地定位和妥善处理线程死循环现象,并在编码阶段就避免潜在风险,成为开发人员必须面对的重要问题,线程死循环问题的解决不仅有助于提高系统的稳定性和可用性,还能优化资源利用和提升应用程序的性能,通过采取适当的预防和处理措施,开发人员能够避免线程陷入无尽的循环,并及时发现和解决潜在问题。那么本文就来分享一下关于如何处理线程死循环问题,以及如何在编码阶段规避潜在风险。
33 2
解决线程死循环问题的有效方法
|
9天前
|
弹性计算 运维 Shell
while循环
【4月更文挑战第29天】
13 0
|
3月前
|
程序员
无限循环
无限循环。
21 0
|
6月前
死循环记录
死循环记录
47 0
|
6月前
while循环和do-while循环?
while循环和do-while循环?
|
9月前
三个循环(C)
while语句:while(表达式){},先判断表达式,若符合,则执行循环内容,一个循环后再次判断表达式。
45 0
|
10月前
数组越界死循环问题!
数组越界死循环问题!
35 0
|
10月前
|
编译器 C语言 C++
数组越界访问打印后为什么会陷入死循环
数组越界访问打印后为什么会陷入死循环
71 0
|
10月前
|
C语言
C 中的循环
C 中的循环
|
JavaScript 前端开发
For Of 循环
For Of 循环
47 0

热门文章

最新文章