c++ - 在数组c ++上制作6位引脚
问题描述
我想问用户 6 位数的密码,我试过这个代码,它确实有效。问题是它无法从 0 开始读取 pin。代码的目的是读取 6 位 pin,无论开始是什么,只要它是整数,它就会读取正确的输出。
using namespace std;
int main(){
int pin[0];
cin>>pin[0];
if (pin[0] >= 100000 && pin[0] <= 999999) {
cout << pin[0];
}
else {
cout << "Invalid input!";
}
}```
解决方案
一方面您想读取一个整数(您将它与100000
和进行比较999999
),另一方面您想将单个数字读入一个数组。不能两者兼而有之。而且你不能有一个 size 数组0
。
只保留单个整数。如果要访问单个数字,可以将其转换为字符串并访问字符(您已经确保它有 6 个数字):
#include <iostream>
#include <string>
int main(){
int pin;
std::cin>>pin;
if (pin >= 100000 && pin <= 999999) {
std::cout << pin << "\n";
std::string pin_string = std::to_string(pin);
for (size_t i=0; i<6; ++i){
std::cout << pin_string[i] << "\n";
}
}
else {
std::cout << "Invalid input!";
}
}
推荐阅读
- python - 从 Python3 中的字符串中获取某些文本
- apache - 清漆、SSL 和 HTTP 标头 - 使用 SSL 重新加载后没有 X-Cache?
- javascript - 拆分对象并将其分组
- java - 有一些我找不到的隐藏错误
- node.js - Jest 不运行 - 无限期挂起
- github - Github Repo 受保护的分支配置不起作用
- angular - 无法解决 'fs' Angular 从 5.2 升级到 7
- ios - UITableViewCell 使用自定义 layoutSubviews() 出现在屏幕上后隐藏部分内容
- sql-server - 确定 DW 的尺寸
- c++ - 两个boost无锁队列会导致死锁吗