首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

C++ 月份英文對照:修正 main 拼寫、陣列定義與函數參數傳遞

     編輯:程式設計綜合問答

原代碼錯誤

  • int mian() 拼寫錯誤,應為 main。
  • char *moth[12] 為指標陣列,傳遞至 print(char *moth[], int y) 正確,但呼叫 print(moth, num-1) 時 moth 退化為 char**,函數內 *moth[y] 取值正確。
  • 缺少 #include <conio.h> 導致 _getch() 未宣告。

簡化修正版


#include 
#include 
using namespace std;

void print(char *moth) { cout << moth << endl; }

int main() {
    char moth[][10] = {"January","February","March","April","May","June",
                       "July","August","September","October","November","December"};
    cout << "請輸入月份數:" << endl;
    int num; cin >> num;
    if (num>=1 && num<=12) print(moth[num-1]);
    _getch();
    return 0;
}

改用二維字元陣列 moth[][10],自動管理記憶體,傳遞 moth[num-1](退化為 char*)給 print 即可。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved