下記コード(Fixed)に修正したところ正常に出力させるようにはできたのですが、なぜ下記コード(Error)では正常に出力されないのか分からず質問させて頂きました。
関数Print_Color(String color)で出力させる文字(色について)を設定しており、関数main()でPrint_Color(String color)を呼び出して実引数(BLUE)を代入しています。
しかし、確認したところmain()内で代入した実引数が、Print_Color(String color)で反映されておらず。REDが出力されてしまいます。
【Error】
C
1String RED; 2String BLUE; 3String GREEN; 4 5void Color(String color); 6 7void main() 8{ 9 Color(BLUE); 10} 11 12void Color(String color) 13{ 14 if(color == RED) 15 { 16 printf("RED"); 17 } 18 else if(color == BLUE) 19 { 20 printf("BLUE"); 21 } 22 else if(color == GREEN) 23 { 24 printf("GREEN"); 25 } 26} 27 28//REDが出力されます
【Fixed】
C
1void Color(String color); 2 3void main() 4{ 5 Color("BLUE"); 6} 7 8void Color(String color) 9{ 10 if(color == "RED") 11 { 12 printf("RED"); 13 } 14 else if(color == "BLUE") 15 { 16 printf("BLUE"); 17 } 18 else if(color == "GREEN") 19 { 20 printf("GREEN"); 21 } 22} 23 24// BLUEが出力されます
回答2件
あなたの回答
tips
プレビュー