解釋說fun1()里的a和b是局部變量,fun2()里的a和b是全局變量,所以我不懂int a=1,b=2這語句是什么?#include <stdio.h> int a=1, b=2; void fun1( int a, int b ) {
printf( "%d %d " ,a, b ); } void fun2() { a=3; b=4; } main() {
fun1(5,6); fun2( ); printf( "%d %d\n",a, b ); } 程序運行后的輸出結果是A) 5 6 1 2B) 3 4 5 6C) 1 2 5 6D) 5 6 3 4?
3 回答
已采納

慕前端1463173
TA貢獻2條經(jīng)驗 獲得超2個贊
int a=1,b=2; 聲明了兩個變量a被賦值為1,b被賦值為2.這兩個變量是全局變量,具有文件作用域。fun1()這個函數(shù)的變量a,b時重新聲明的,與第二行的a,b可以說沒有任何聯(lián)系,即在做fun1()函數(shù)定義時,括號里面可以是(int c, int d),結果一樣。fun2()這個函數(shù)的作用就是永久的修改了變量a,b的值。

噼喱啪啦
TA貢獻392條經(jīng)驗 獲得超170個贊
int? a=1,b=2;定義在主函數(shù)外,代表全局變量,定義完在主函數(shù)內(nèi)一直保存值,結束前不釋放內(nèi)存。
函數(shù)的形式參數(shù)可以改符號,別被混淆了。
void? fun (int a,int b)
和
void fun (int x, int y)是一樣的。
- 3 回答
- 0 關注
- 1690 瀏覽
添加回答
舉報
0/150
提交
取消