xixi2017 发表于 2023-2-22 15:41

函数通过命令实现跳转哪种方式比较好?

在C语言中,可以使用goto或者if..else语句来实现整个函数的跳转。
int foo( int arg ) {
int result;
if ( arg == 0 ) {
    goto END;
}
// do something with arg
result = arg * 2;
END:
return result;
}
// program label
good_night:
printf("Good night!\n");

// goto statement
goto good_night;
还可以使用break 和 continue 语句来条件跳转:
for (i = 0; i < 10; i++) {
if (i == 5)
    break;
printf("%d is not 5\n", i);
}

for (i = 0; i < 10; i++) {
if (i == 5)
    continue;
printf("%d is not 5\n", i);
}
还有return语句,用来退出当前函数的执行:
int foo() {
if (condition)
    return 1;
else
    return 0;
}


heisexingqisi 发表于 2023-2-22 21:42

函数跳转有很多方式。goto,if else switch case

小夏天的大西瓜 发表于 2023-2-23 15:17

goto在C语言中不太主张吧,一旦多了逻辑就乱了

小小蚂蚁举千斤 发表于 2023-2-23 15:40

.同一个函数内,可以使用goto语句,不同函数之间的跳转,可以使用 setjmp / longjmp

AdaMaYun 发表于 2023-2-24 13:50

小夏天的大西瓜 发表于 2023-2-23 15:17
goto在C语言中不太主张吧,一旦多了逻辑就乱了

这个存在及合理,不乱用没啥事,感觉更任性的是setjump函数

zhuotuzi 发表于 2023-2-25 20:03

我还没用过goto

OKAKAKO 发表于 2023-2-27 15:56

同一函数goto

szt1993 发表于 2023-2-28 12:24

调用深层次的函数用到跳转,不用一层一层的去返回和判断

中国龙芯CDX 发表于 2023-2-28 14:17

这些跳转方式有什么区别?那个更适合呢?

LOVEEVER 发表于 2023-2-28 14:26

跳转就是看需求啊,具体是返回还是退出

AloneKaven 发表于 2023-3-1 20:05

这些方式哪个更好啊?
页: [1]
查看完整版本: 函数通过命令实现跳转哪种方式比较好?