I write the following c++ code :
int main() {
char *argv[4];
cin >> argv[0] >> argv[1] >> argv[2] >> argv[3];
cout << argv[0] << argv[1] << argv[2] << argv[3] << endl;
return 0;
}
This gives me a segmentation fault 11. But If I initialise the array with 4 string
values instead of taking user input and then print, it works fine.
Also, If I try the following :
int main() {
char *argv[4] = {"bg","demo","running","2"};
cout << argv[0] << argv[1] << argv[2] << argv[3] << endl;
cin >> argv[0] >> argv[1] >> argv[2] >> argv[3];
cout << argv[0] << argv[1] << argv[2] << argv[3] << endl;
return 0;
}
I get bus error 10. Kindly tell me what I'm doing wrong. I don't see any illegal memory accesses.