CDT プラグインを使用して Eclipse で 2 つのテンプレート プロジェクトを作成し (1 つは C プロジェクト、もう 1 つは C++)、2 つの非常によく似たプロジェクトをコンパイルしましたが (私の場合)、まったく異なるコンソール出力が得られます。なぜこの出力は非常に異なるのでしょうか? C コード:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int numbers[5];
int * p;
p = numbers; *p = 10;
p++; *p = 20;
p = &numbers[2]; *p = 30;
p = numbers + 3; *p = 40;
p = numbers; *(p+4) = 50;
int n;
for (n=0; n<5; n++)
printf("%c ",numbers[n]);
return EXIT_SUCCESS;
}
ゴミを出力する
C++ コード:
#include <iostream>
using namespace std;
int main() {
int numbers[5];
int * p;
p = numbers; *p = 10;
p++; *p = 20;
p = &numbers[2]; *p = 30;
p = numbers + 3; *p = 40;
p = numbers; *(p+4) = 50;
for (int n=0; n<5; n++)
cout << numbers[n] << " ";
return 0;
}
出力
10、20、30、40、50