第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

函數(shù)返回值而沒有return語句

函數(shù)返回值而沒有return語句

C
小唯快跑啊 2019-08-28 14:53:28
函數(shù)返回值而沒有return語句為什么下面的代碼輸出正確?int GGT沒有return語句,但代碼確實有用嗎?沒有設置全局變量。#include <stdio.h>#include <stdlib.h>int GGT(int, int);void main() {     int x1, x2;     printf("Bitte geben Sie zwei Zahlen ein: \n");     scanf("%d", &x1);     scanf("%d", &x2);     printf("GGT ist: %d\n", GGT(x1, x2));     system("Pause");}int GGT(int x1, int x2) {     while(x1 != x2) {         if(x1 > x2) {             /*return*/ x1 = x1 - x2;         }         else {             /*return*/ x2 = x2 - x1;         }     }}
查看完整描述

3 回答

?
慕無忌1623718

TA貢獻1744條經(jīng)驗 獲得超4個贊

至少對于x86,此函數(shù)的返回值應該在eax寄存器中。那里的任何東西都會被調(diào)用者視為返回值。

因為eax它被用作返回寄存器,所以它通常被callee用作“scratch”寄存器,因為它不需要保留。這意味著它很可能被用作任何局部變量。因為它們兩者在最后是相等的,所以更可能保留正確的值eax


查看完整回答
反對 回復 2019-08-28
?
呼喚遠方

TA貢獻1856條經(jīng)驗 獲得超11個贊

在x86上,返回值存儲在EAX寄存器中,此編譯器也“意外地”使用它來存儲算術運算的結(jié)果(或至少減法)。您可以通過查看編譯器生成的程序集來檢查這一點。我同意kriss - 你不能認為這種情況總是如此,所以最好明確指定返回值。


查看完整回答
反對 回復 2019-08-28
  • 3 回答
  • 0 關注
  • 680 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號