gpt4 book ai didi

python - if-else 或只是声明-if 在条件值中

转载 作者:太空宇宙 更新时间:2023-11-04 06:33:58 25 4
gpt4 key购买 nike

假设我有一个取决于条件的变量。从效率的角度,我应该使用

int s;
if (d > 2)
{
s = -1;
}
else
{
s = 1;
}

或者只是

int s = 1;
if (d > 2)
{
s = -1;
}

谁能解释一下区别?编译型语言(例如 C)与解释型语言(例如 Python)之间有什么区别吗?

请注意,此问题与 previous question 有关我的,我问的原因是一样的:它在任何编程语言中都很常见,我总是问自己我应该使用什么。

最佳答案

没有区别,通过优化 gcc -S -O2 可以得到相同的输出:

    .file   "demo.c"
.section .rodata.str1.1,"aMS",@progbits,1
.LC0:
.string "%d"
.section .text.startup,"ax",@progbits
.p2align 4,,15
.globl main
.type main, @function
main:
.LFB11:
.cfi_startproc
subq $8, %rsp
.cfi_def_cfa_offset 16
movl $-1, %esi
movl $.LC0, %edi
xorl %eax, %eax
call printf
xorl %eax, %eax
addq $8, %rsp
.cfi_def_cfa_offset 8
ret
.cfi_endproc
.LFE11:
.size main, .-main
.ident "GCC: (Debian 4.7.2-5) 4.7.2"
.section .note.GNU-stack,"",@progbits

关于python - if-else 或只是声明-if 在条件值中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17185682/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com