简单C/C++ 问题

来源:百度知道 编辑:UC知道 时间:2024/07/03 02:46:22
一个string类型字符串t。用scanf输入。怎样得到它的长度?
我用t.size()得不到啊!!用cin输入就能得到,为什么?
字符数组 有长度的限制啊。
如果字符串很长了怎么办

不能直接scanf吧
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str="";
char buf[1024];
scanf("%s",buf);
str=buf;
cout<<str.size()<<endl;
return 0;
}

c语言好像不支持string
c++才支持

strlen

用strlen知道,但strlen不包括最后那个字符串结束符