我有以下C代码:
__m128 pSrc1 = _mm_set1_ps(4.0f);
__m128 pDest;
int i;
for (i=0;i<100;i++) {
m1 = _mm_mul_ps(pSrc1, pSrc1);
m2 = _mm_mul_ps(pSrc1, pSrc1);
m3 = _mm_add_ps(m1, m2);
pDest = _mm_add_ps(m3, m3);
}
float *arrq = (float*) pDest;
Run Code Online (Sandbox Code Playgroud)
直到for循环结束的所有内容都有效.我现在要做的是将__m128类型转换回float.因为它存储了4个浮点数,我认为我很容易将其转换为浮动*.我究竟做错了什么?(这是一个测试代码,所以不要怀疑).我基本上尝试了所有可能的转换.谢谢你的帮助.
最近我遇到了一个错误,当我修复它时,我想知道是否有可能返回一个VECSXP(即一个R列表类型),其中元素被命名.这个c ++代码:
SEXP do_bla()
{
int prtCnt = 0;
SEXP a = PROTECT(allocMatrix(REALSXP, 5, 5));
prtCnt++;
SEXP b = PROTECT(allocVector(REALSXP, 5));
prtCnt++;
SEXP OS = PROTECT(allocVector(VECSXP, 2));
prtCnt++;
SET_VECTOR_ELT(OS, 0, a);
SET_VECTOR_ELT(OS, 1, b);
UNPROTECT(prtCnt);
return OS;
}
Run Code Online (Sandbox Code Playgroud)
会给我一个R中两个元素(矩阵和向量)的列表:
s <- .Call("do_bla", ....)
Run Code Online (Sandbox Code Playgroud)
可以像这样索引:
s[[1]]; s[[2]]
Run Code Online (Sandbox Code Playgroud)
为了实现这一目标,我需要做些什么改变:
s$a; s$b
Run Code Online (Sandbox Code Playgroud)
或者这不可能吗?
可能重复:
根据模式在Linux中重命名大量文件
我有这种格式的多个文件:
file_1.pdf
file_2.pdf
...
file_100.pdf
Run Code Online (Sandbox Code Playgroud)
我的问题是如何重命名所有文件,如下所示:
file_001.pdf
file_002.pdf
...
file_100.pdf
Run Code Online (Sandbox Code Playgroud)
我知道你可以用'rename'重命名多个文件,但在这种情况下我不知道怎么做.
c ×2
bash ×1
c++ ×1
file-rename ×1
perl ×1
r ×1
r-extension ×1
rename ×1
s-expression ×1
sse ×1