r - 在 R 中,检测操作系统是否为 64 位的规范方法是什么?

标签 r operating-system 64-bit

一些可能性包括:

Sys.info()["machine"] == "x86-64"
.Platform$r_arch == "x64"
version$arch == "x86_64"

有没有理由更喜欢一种方法而不是另一种方法?

相关:detecting operating system in R (e.g. for adaptive .Rprofile files)

最佳答案

实际上,这些方法都不是规范的,我认为这意味着“Brian Ripley 会说什么”。尝试这个:

?.Machine

sizeof.pointer……C SEXP 类型的字节数。在 R 的 32 位版本上为 4,在 64 位版本上为 8。
 64bit <- .Machine$sizeof.pointer == 8
 64bit
 #[1] TRUE

至于您的提名,只有其中一个在我的机器上返回 TRUE:
> Sys.info()["machine"] == "x86-64"
machine 
  FALSE 
> .Platform$r_arch == "x64"
[1] FALSE
> version$arch == "x86_64"
[1] TRUE

关于r - 在 R 中,检测操作系统是否为 64 位的规范方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11159218/

相关文章:

r - 如何在不事先调用库 ("shiny") 的情况下运行我的 Shiny 应用程序?

r - 如何在 R 中循环/重复线性回归

linux - 使用轮询和中断方法查找 CPU 效率

c - 整数大小的变化?

c - 64 位 CPU 上不同整数大小的效率

c - 使用 int32_t 访问 int64_t 的高低部分

r - mean(rnorm(100,mean=0,sd=1)) 不是 0;并且 sd(rnorm(100,mean=0,sd=1)) 不是 1。为什么?

r - 使用 aes_string 时如何包装 X 轴标签?

python - 如何在某些操作系统上禁用 Python 程序?

c# - 我的 CRC64 校验和编码需要 CRC 反向代码