int main(int argc, char*argv[]){
  char* name;
strcpy(name, argv[1]);
}


として、argv[1]をhanafudashaffle.cppとしたところエラーが生じました。

char* name で宣言すると、確保できるメモリの限界はどのようになるのでしょうか?
またargv[1]に格納された文字列のサイズを知るにはどうしたら良いでしょうか?