#include <iostream>
using namespace std;
int main() {
int * a[5];
char * b[5];
cout<<a[1]; // this works and prints address being held by second element in the array
cout<<b[1]; // this gives run time error . why ?
return 0;
}
Может ли кто-нибудь объяснить мне cout<<b[1]
дает ошибку во время выполнения? Не должны ли оба массива int и char вести себя аналогично друг другу?разница между int * и char * in C++
Вы имеете в виду, если он был инициализирован, там не будет ошибки? – g4ur4v
Подумайте, что произойдет, если вы выполните 'const char * s =" Hello "; std :: cout << s; ", а затем подумайте, действительно ли вы будете ожидать, что' int * 'и' char *' будут вести себя одинаково. –