c++
1#include <iostream> 2 3int main() { 4 std::string s("Hello World!"); 5 char *p[15] = {(char*)s.c_str()}; 6 7 for (int i = 1; i < 15; i++) { 8 p[i] = {(char*)&p[i - 1]}; 9 } 10 11 std::cout << **************(char***************)p[14] << std::endl;; 12 13 getchar(); 14 return 0; 15}
char *p[15] = {(char*)s.c_str()};
の部分はstring型をchar arrayに変換しているということなのでしょうか?
それと、
c++
1#include <iostream> 2 3int main() { 4 std::string s("Hello World!"); 5 char *p[2] = {(char*)s.c_str()}; 6 7 for (int i = 1; i < 2; i++) { 8 p[i] = {(char*)&p[i - 1]}; 9 } 10 11 std::cout << *(char**)p[1] << std::endl;; 12 13 getchar(); 14 return 0; 15}
でも同じ結果が得られるのですがなぜでしょうか??
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/15 06:28
2018/06/15 06:33 編集
2018/06/15 06:34
2018/06/15 06:38 編集