C++ 如何在C++;
我试过了,但没用C++ 如何在C++;,c++,string,printf,C++,String,Printf,我试过了,但没用 #include <string> string someString("This is a string."); printf("%s\n", someString); #包括 字符串someString(“这是一个字符串”); printf(“%s\n”,someString); 您需要访问底层缓冲区: printf("%s\n", someString.c_str()); 或者最好使用cout如果您想使用printf(),您可能还想: #include &
#include <string>
string someString("This is a string.");
printf("%s\n", someString);
#包括
字符串someString(“这是一个字符串”);
printf(“%s\n”,someString);
您需要访问底层缓冲区:
printf("%s\n", someString.c_str());
或者最好使用
cout如果您想使用printf()
,您可能还想:
#include <stdio.h>
#包括
不能在参数中使用std::string调用“printf”。
“%s”是为C样式字符串设计的:char*或char[]。
在C++中你可以这样做:< /P>
#include <iostream>
std::cout << YourString << std::endl;
您需要#include
来使用字符串
和#include
来使用cin
和cout
。(我读答案的时候没有明白)。下面是一些有效的代码:
#include<string>
#include<iostream>
using namespace std;
int main()
{
string name;
cin >> name;
string message("hi");
cout << name << message;
return 0;
}
#包括
#包括
使用名称空间std;
int main()
{
字符串名;
cin>>名称;
字符串消息(“hi”);
cout使用字符串时,打印消息的最佳方式是:
#include <iostream>
#include <string>
using namespace std;
int main(){
string newInput;
getline(cin, newInput);
cout<<newInput;
return 0;
}
#包括
#包括
使用名称空间std;
int main(){
字符串输入;
getline(cin,newInput);
cout“not work”-为什么不向我们显示一个错误或者什么东西不起作用?(尽管在这种情况下这很明显-但是您可能也有一个编译器错误,因为您没有导入std
命名空间)重复:我总是更喜欢前一个版本。它工作得更好:std::cout为什么C如此烦人和复杂…顺便说一句,#include
(如何在C++中打印字符串)根本不是真的。这里最大的缺陷是明显的安全漏洞(缓冲区溢出!),但还有其他漏洞。是的,这是一个严重的问题。Thanx
printf("%s\n",YourString.c_str())
#include<string>
#include<iostream>
using namespace std;
int main()
{
string name;
cin >> name;
string message("hi");
cout << name << message;
return 0;
}
#include <iostream>
#include <string>
using namespace std;
int main(){
string newInput;
getline(cin, newInput);
cout<<newInput;
return 0;
}