c++新手;在c++中输入和显示名称
New to c++; Entering and displaying name in C++
我对c++很陌生,我可以输入一个名字,但它不能正确显示。我的导师让我研究字符串,当我这样做的时候,一切都变得毫无意义。
#include<stdio.h>
#include<string.h>
main()
{
char name;
printf("Hello stranger, what is your name?n");
scanf("%cn", &name);
system("PAUSE");
printf("nnWelcome to the Town of Falls Creek, %cn",name);
}
在c++中,我们使用std::string
来表示字符序列。我们使用std::cout
和std::cin
来代替printf和scanf
一定要上网看看,你会找到很多资源。
char name;
scanf("%cn", &name);
是从标准输入中读取单个字符的c风格方法。
你应该做的是:
#include <iostream>
#include <string>
...
std::string name;
if (std::cin >> name)
std::cout << "Hello " << name << "." << std::endl;
您使用了一个字符作为名称的变量。
char name;
这里需要使用string.
顺便说一句:你的代码看起来更像现代的c++如果您使用std::cin而不是scanf。
char只能接受单个字符,如'a', 'b'等。所以这里使用字符串数据类型
由于您使用的是char,因此它不会显示总名称。
用字符串代替char。
#include<stdio.h>
#include<string.h>
#include<conio.h>
main()
{
std::string name;
printf("Hello stranger, what is your name?n");
scanf("%sn", &name);
getch();
printf("nnWelcome to the Town of Falls Creek, %sn",name);
}
享受编码!
相关文章:
- 比较并显示使用最小值(a,b)和最大值(a、b)升序排列的4个数字
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 字符串-C++后显示的随机字符
- 继承期间显示未知行为的子类
- 仅使用绝对值对数组进行排序,并在C++中显示实际值
- 程序崩溃并显示"std::out_of_range"错误
- 如何在C++中用std::cout正确显示带十六进制的字符串文本
- 为什么在C的循环中使用printf的Rust代码不显示输出,而在C++的循环中显示std::cout
- 从数据库实时显示QT c++中的数据
- 当使用比格式支持的精度更高的精度来显示数字时,会写出什么数据
- 显示错误输出的简单数组排序程序
- Qt自定义QPush按钮未显示在布局上
- C++射线示踪剂ppm表示没有足够的数据来显示图像
- 显示基于用户输入的整数的字符
- 使用QTreeView,如何通过调用函数只突出显示特定的行/列
- 应用程序崩溃并显示"symbol _ZdlPvm, version Qt_5 not defined in file libQt5Core.so.5 with link time reference"
- 示例外壳应用程序显示的 V8 "segmentation fault (core dumped)"错误
- 如何使 windows 命令提示符在C++可执行文件上显示返回值?
- 密码登录程序将永远循环并显示不正确的结果
- std::strftime 在 Windows 中使用 GMTIME 将时区 UTC 显示为 UTC+1