社区
C#
帖子详情
C# 强制转换
lc1255694986
2020-01-11 10:37:36
如下为我在C++中用到的强制转换,想在C#中也实现相同功能,要如何编写程序
float get;
char *p;
p = (char*)&get;
...全文
222
3
打赏
收藏
C# 强制转换
如下为我在C++中用到的强制转换,想在C#中也实现相同功能,要如何编写程序 float get; char *p; p = (char*)&get;
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
牧歌ing
2020-01-13
打赏
举报
回复
float f = 1.1f;
char b = Convert.ToChar(f);
冰风漫天
2020-01-12
打赏
举报
回复
和c++里写法是一样的,函数或者类上加上unsafe标记,项目编译选项上开关打开就可以了 namespace test { class Program { unsafe static void Main(string[] args) { float get=0.432f; char* p; p = (char*)&get; Console.WriteLine("{0}", new String(p)); } } }
hztltgg
2020-01-12
打赏
举报
回复
c#不是这样玩的吧,为了安全指针都不用的
c#
常见的
强制转换
在
C#
中,强制类型转换是必要的,因为在编程过程中经常会涉及到不同数据类型之间的相互转换,而这些数据类型可能无法隐式地转换。强制类型转换的主要原因包括以下几点: 类型兼容性:在某些情况下,需要将一种数据类型转换为另一种数据类型以满足特定的需求,例如将整数转换为浮点数,或者将字符串转换为整数等。强制类型转换能够确保数据在不同类型之间的兼容性。 数据精度:在进行数值计算时,有时需要将一个数据类型转换为另一个数据类型以确保计算结果的精度和准确性,例如从整数向浮点数的转换,避免数据丢失。
C#
自动类型转换/强制类型转换
C#
自动类型转换/强制类型转换
C#
转换(显式转换和
强制转换
)
例如,图17-5演示了尝试把值为1365的ushort类型转换为byte类型会导致数据丢失。例如,图17-6演示了
强制转换
表达式将两个ushort类型的值转换为byte类型。对于第二种情况,最高位丢失了,得到的值是85,很明显不等于源值1365。很明显,在所有可能的无符号16位ushort值中,只有相当小一部分(0.4%)能在不损失。标类型时会丢失值,那么
C#
是不会提供这两种类型的自动转换的。如果要把短类型转换为长类型,让长类型保存短类型的所有位很简单。目标类型也许无法在不损失数据的情况下容纳源值。
C#
中 As 和
强制转换
的总结
C#
是一门强类型语言,一般情况下,我们最好避免将一个类型
强制转换
为其他类型,但有些时候难免要进行类型转换。先想想究竟哪些操作可以进行类型转换(先不考虑.NET提供的Parse),一般我们都有以下选择:使用as操作符转换, 使用传统C风格的强制转型, 使用is来做一个转换测试,然后
C#
里三种强制类型转换
强制类型转换 在
C#
中,我们可以看到三种强制类型转换,比如
强制转换
成有符号32位整型,可以找到下面三种方式: ① (int)()②Convert.ToInt32()③int.Parse() 三种转变在有些数据时可以通用,但是用法上仍然有很大的区别 (int)表示使用显式
强制转换
,是一种类型转换。当我们从 int 类型到 lo...
C#
111,129
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章