问题标签 [type-conversion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
26944 浏览

c# - 将 TimeSpan 数据类型转换为 DateTime?

我正在使用 C# 3.5 将小型 MSAccess 应用程序转换为基于 Web 的 ASP.NET 应用程序。我想知道在将一些 VBA 代码转换为 C# 时,在 C# 中使用日期的最佳方法是什么。

这是 VBA 代码的示例:

这是我当前的 C# 代码与注释代码中指出的错误的样子:

0 投票
2 回答
476 浏览

c++ - C/C++ 中的数值转换

我需要将 C/C++ double 转换为 64 位二进制补码,其中 Radix 点位于第 19 位(含)。

这意味着对于我要转换为的格式

  • 0x0000 0000 0010 0000 是数字 1
  • 0xFFFF FFFF FFF0 0000 是数字-1
  • 0x0000 0000 0000 0001 是 0.95 x 10^-6
  • 0xFFFF FFFF FFFF FFFF 为 -0.95 x 10^-6

到目前为止,我一直在使用 C 标准库中的 modf 函数,但这并不能真正满足我的需求。我还查看了 Boost 中的一些类型转换类,但我也找不到合适的解决方案。有谁知道图书馆或简单的方法来进行这种转换?也许更熟悉 Boost 的人可以为我指明正确的方向。

如果有帮助,这里有一些关于如何存储双打的文档。

编辑:

我有一个后续问题,这真的是为了我自己的利益。什么是“基数”?这里有点像小数点。但是,我唯一一次听到基数这个词是在我学习离散快速傅里叶变换的时候。如果我没记错的话,Radix-II 方法很快,因为计算 DFT 所需的乘法更少。

0 投票
10 回答
1068549 浏览

python - 将 Unicode 字符串转换为 Python 中的字符串(包含额外符号)

如何将 Unicode 字符串(包含额外的字符,如 £ $ 等)转换为 Python 字符串?

0 投票
3 回答
1988 浏览

c# - 尽管有通用约束,但 C# 类型转换错误

为什么,对“必须继承自 A”的类 P 的类型参数 T 的通用约束,第一次调用成功但第二次调用失败,注释中详述了类型转换错误:

通用约束不应该确保List<T> 确实如此ICollection<A>吗?

0 投票
1 回答
2595 浏览

ssis - 如何在 SSIS 中将 SQL Server 类型 varbinary 转换为整数?

我需要在转换中使用二进制数据作为整数并进行一些操作,但是如何进行转换?我尝试了许多 SSIS 数据类型,但没有运气。顺便说一句,我不想​​使用脚本任务。


[以下更新部分]

数据是存储在 CDC 函数 fn_cdc_get_net_changes 的 __$update_mask 列中的值。以下是我在 SSIS 中尝试的 CAST,

相应的 TSQL 代码将是

这工作正常。但 SSIS CAST 不是。希望这可以提供有关我的查询的足够信息。

0 投票
2 回答
3364 浏览

c++ - 模板复制构造函数因特定模板类型而失败

由于我的一些代码需要在不同类型的矩阵之间进行隐式转换(例如Matrix<int>to Matrix<double>),我定义了一个模板化的复制构造函数Matrix<T>::Matrix(Matrix<U> const&)而不是标准的Matrix<T>::Matrix(Matrix<T> const&)

通过将适当的类型转换添加到复制构造函数中,此方法可以在不同类型的矩阵之间完美地转换。令人惊讶的是,在简单的复制构造函数可以运行的情况下,它会因 malloc 错误而失败: where U == T。果然,使用默认Matrix<T>::Matrix(Matrix<T> const&)签名重载复制构造函数可以解决问题。

这是一个糟糕的解决方案,因为它会导致复制构造器代码的大量复制(字面意思是未更改的复制和粘贴)。更重要的是,我不明白为什么malloc没有重复代码会出现双释放错误。此外,为什么这里需要非常冗长的template <typename T> template <typename U>语法而不是标准的语法,而且更简洁,template <typename T, typename U>

模板化方法的完整源代码,在 Mac OS 10.5 上使用 G++ v4.0.1 编译。

0 投票
8 回答
819 浏览

c - 这是将 long 转换为二进制(char *)表示的惯用 C 方法吗?

我猜这个问题在标题中。

这是我想出的临时解决方案,但我想知道:

  • 如果将二进制表示为 char* 有缺点。有没有更好的方法(考虑到我想要位移等的能力......)
  • 如果下面的代码中有明显的非惯用 C(或其他错误)。

欢迎所有建议...

0 投票
2 回答
13362 浏览

groovy - Groovy 类型转换

在 Groovy 中,您可以使用as运算符或asType方法进行令人惊讶的类型转换。例子包括

我很惊讶我可以从 Integer 转换为 Short 并从 Set 转换为 List,因为这些类型之间没有“是”关系,尽管它们确实共享一个共同的祖先。

例如,下面的代码就转换所涉及的类型之间的关系而言等价于 Integer/Short 示例

但是这个例子当然失败了。as运算符和方法背后的类型转换规则到底是什么asType

0 投票
1 回答
97 浏览

file - Vista 将我的代码还原到我身上

出于某种奇怪的原因,当我将 PHP 文件从一个文件夹移动到另一个文件夹时,Vista 会复制该文件的旧版本而不是当前版本。这确实搞砸了我正在开发的 Web 应用程序,并导致我浪费时间来解决问题。

这到底是怎么回事?如何防止 Vista 复制或移动文件的先前版本?

为了进一步解释,当我在当前位置打开我的 PHP 文件时,我会看到我的代码的当前版本。当我将文件复制到新位置并打开文件时,我会看到旧版本的代码。

0 投票
4 回答
17578 浏览

c - C:在函数调用中传递参数时的类型转换

来自 C 编程语言第 2 版:

由于函数调用的参数是表达式,因此在将参数传递给函数时也会发生类型转换。在没有函数原型的情况下,char 和 short 变为 int,而 float 变为 double。

通过阅读文本,我得到的印象是,除非您使用强制类型转换或函数原型明确指定参数类型,否则函数参数将始终以 int 或 double 形式传递。

为了验证我的假设,我编译了以下代码:

编译后我收到以下警告:

typeconversion.c:11:警告:“function_call”的类型冲突</p>

typeconversion.c:7:警告:“function_call”的先前隐式声明在这里

我的猜测是 c 和 number 在函数调用中都被转换为 int 和 double,然后又被转换回 char 和 float。这是真的发生了吗?