1.如果直接用csanf 输入string与char类型的,string是输入不了的

但提前申请空间就可以

#include <stdio.h>
#include <string>
#include<iostream>
using namespace std;
int main()
{
string a;
a.resize(2); //需要预先分配空间,resize()分配空间
scanf("%s", &a[0]);
cout << a;
return 0;
}

String 类型与char 类型 输入

 

当前空间只有2个,所以答案是“he”,那么注意分配空间

2.如果用cin就不会出现这种情况,需要注意的是char只能一个一个输入,而string类型的可以输入一窜字符;而在scanf中都可以输入一窜字符

但cin的速度有点慢,而scanf,printf这些输入输出较快

转:https://www.cnblogs.com/Youio-bolg/p/11219185.html

 

相关文章:

  • 2021-07-14
  • 2022-12-23
  • 2021-07-13
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-29
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-05-19
  • 2022-12-23
  • 2021-10-05
  • 2022-01-13
相关资源
相似解决方案