转型异常,求解

转型错误,求解cinkxstrlen(k)if(k8)求解啊,k是 Int行x也是 int型为什么会出现这种错误呢?[解决办法]

转型错误,求解
cin>>k;
x=strlen(k);
if(k<8) 
   转型异常,求解
  求解啊,
   k是 Int行
  x也是 int型
  为什么会出现这种错误呢?
  
   
[解决办法]

引用:
cin>>k;
x=strlen(k);
if(k<8) 
   
  求解啊,
   k是 Int行
  x也是 int型
  为什么会出现这种错误呢?

但是strlen函数要求一个const char*参数,k是int,肯定会尝试转换,然后转换失败。
[解决办法]
这样吧:
string s;
cin >> s;
int length = s.size(); // length就是你输入内容的长度
只要输入中间没空格就行,否则会被截断的。