gpt4 book ai didi

c++ - C++中的字符到整数的转换

转载 作者:行者123 更新时间:2023-11-30 00:49:01 24 4
gpt4 key购买 nike

在 Stroustrup 的编程的第 3.9.1 章“安全转换”中,他有代码来说明从 int 到 char 以及返回的安全转换。

#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
#include<cmath>
using namespace std;

int main()
{

char c='x';
int i1=c;
int i2='x';

char c2 = i1;

cout << c <<'<< i1 << ' << c2 << '\n';

return 0;
}

它应该将 x 120 x 打印到屏幕上。

但是,我无法让它工作,我也不确定为什么。我得到的结果是 x1764834364x

我还收到了 3 条警告(在 Xcode 6.3.1 中)。

  • 多字符字符常量。
  • 字符常量对于它的类型来说太长了。
  • 未使用的变量 i2。

这是什么原因造成的?

最佳答案

问题出在这里:

'<< i1 << '

编译器给你一个警告(至少是 gcc):

warning: character constant too long for its type

它认为您正在尝试显示单个 char(撇号之间的内容),但实际上您正在传递多个 char。您可能只想添加空格,例如

' ' << i1 << ' '

关于c++ - C++中的字符到整数的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29931270/

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