【发布时间】:2011-10-14 15:12:37
【问题描述】:
我对 C++ 完全陌生,但对 Java、C#、JavaScript、VB 不是。我正在使用 Visual Studio 2010 中的默认 C++ 控制台应用程序。
在尝试执行 printf 时,我得到了一些奇怪的字符。每次都不一样,这告诉我每次运行它时他们可能正在查看不同的内存位置。
代码:
#include "stdafx.h"
#include <string>
using namespace std;
class Person
{
public:
string first_name;
};
int _tmain(int argc, _TCHAR* argv[])
{
char somechar;
Person p;
p.first_name = "Bruno";
printf("Hello %s", p.first_name);
scanf("%c",&somechar);
return 0;
}
【问题讨论】:
-
在 C++ 中使用
cout。对于带有 %s 的 printf,您需要p.first_name.c_str(),但不要在 C++ 中使用printf。
标签: c++ console-application printf