函数のオーバーロード(多重定義)とデフォルト引数

引数が違えば同じ名前の函数が複数定義できる。デフォルト引数はプロトタイプ宣言のほうか実装のほうかどちらか一方にだけ指定する。

#include <stdio.h>

int sum(int a=100, int b=200){
    return a + b;
}

double sum(double a, double b, double c){
    return a + b + c;
}


int main(){
    printf("%d\r\n", sum());
    printf("%d\r\n", sum(10, 20));
    printf("%.16f\r\n", sum(1.1, 1.2, 1.3));
    return 0;
}

f:id:ti-nspire:20190515073929p:plain

Pythonでも同じようなことができる。
f:id:ti-nspire:20190515074052p:plain