小编Tru*_*are的帖子

声明字符时char和int之间的区别

我刚刚开始学习C,并且对使用int和char声明字符感到困惑.

我很清楚任何字符都是由整数组成的,因为字符的"整数"是字符的各自的ASCII小数.

也就是说,我了解到完全可以在int不使用ASCII小数的情况下声明一个字符.例如.将变量声明test为字符'X'可以写为:

char test = 'X';
Run Code Online (Sandbox Code Playgroud)

int test = 'X';
Run Code Online (Sandbox Code Playgroud)

对于两个字符的声明,转换字符都是%c(即使测试被定义​​为int).

因此,我的问题是/是否使用声明字符变量charint使用何时声明字符变量之间的区别int

c

35
推荐指数
2
解决办法
3万
查看次数

无法在 WSL 上使用 Bash 进行 SSH

我最近通过 WSL 在 Windows 上安装了 Bash。

但是,当我尝试使用 SSH 访问我的学校服务器以进行我的项目时(就像我通常使用 PuTTY 一​​样),每当我尝试通过 SSH 进入我的学校网络时,我都会收到以下错误消息:

我输入的命令是:

ssh username@schooldomain.edu.com 
Run Code Online (Sandbox Code Playgroud)

我收到的错误消息是:

Could not resolve hostname schooldomain.edu.com: Temporary failure in name resolution
Run Code Online (Sandbox Code Playgroud)

由于我对 UNIX 系统相当陌生,我可能错过了某些配置步骤。也就是说,我可以使用 PuTTY 访问学校的服务器。如果我可能需要进行任何其他配置才能使其正常工作,请提出建议。

谢谢各位!

linux ubuntu windows-subsystem-for-linux

3
推荐指数
1
解决办法
7940
查看次数

为什么int被提升为double而不是float用于隐式转换

我目前正在学习C++思想C++入门.在关于类型转换的第4.11章中,我注意到本章很少讨论从积分到浮点类型的隐式转换,但实际上主要集中在积分类型内的转换.因此,我不确定从整数类型到浮点类型的转换规则.

我的问题来自章节的例子:

int ival = 3.541 + 3
Run Code Online (Sandbox Code Playgroud)

该章提到double在添加3.541之前将3转换为类型.

问题源于这样一个事实:对于大多数整数类型,int除非它们无法适应,否则它们在隐式转换期间大多被提升int.由于intfloat两个相同大小的4个字节,而3.0和3.541可以完美配合到float,为什么高阶double在这种情况下,用于隐式转换,而不是float?这是否意味着对于任何整数类型到浮点类型的隐式转换,double无论精度或大小如何,整数类型都将转换为a ?

谢谢你!

c++ floating-point double implicit-conversion

0
推荐指数
1
解决办法
819
查看次数