gpt4 book ai didi

C++ 读取 int16_t(G++ 编译器)

转载 作者:行者123 更新时间:2023-11-28 03:16:11 27 4
gpt4 key购买 nike

我需要在 stdint.hint16_t 中存储值。我如何从用户终端读取这个值?

这个答案 ( So, we have int32_t, int16_t, uint64_t, etc.. But where are the atoi32, atoi16, atoui64, etc...? ) 的方法不适用于 Ubuntu g++ 编译器。

我更喜欢使用标准 C++ 库。像这样的东西:

#include <cstdio> 
#include <stdint.h>
#include <iostream>

using namespace std;

int main ( void ) {
char value [] = "111";
int16_t tmp;

if ( sscanf ( value, "%???", & tmp) == 1 ) cout << "OK" << endl;

return 0;
}

还是读取标准整数然后转换更好?

我不使用 C++11。

最佳答案

停止使用旧的 C 函数,开始使用 C++ 功能:

std::string value = "111";

std::istringstream is(value);
if (is >> tmp)
std::cout << "OK\n";

如果你想从用户那里读取它,那么使用 std::cin 代替:

if (std::cin >> tmp)
std::cout << "OK\n";

关于C++ 读取 int16_t(G++ 编译器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16820700/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com