char c[20]; string s; cin >> s; strcpy(c, s.c_str()); Note: 这里只能用strcpy,不能直接将c_str()的返回值赋给c,因为s对象被析构,内容被处理