作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
背景:
我将 Matlab 与 C++ 一起用于绘图目的。在我目前的过程中,我需要使用 matlab 的函数将一个变量传递给 matlab 以及一个将在 matlab 环境中命名该变量的字符串。我调用的函数是 engPutVariable(ep, "varMatlab", varC++)
其中 ep 是类 (matlab)Engine 的对象,varC++
是变量的名称在我传递的 C++ 中,当存储在 matlab 工作区中时, varMatlab
将是同一变量的名称。我使用的过程需要 4 行代码来传递一个变量,它为我传递的每个变量做同样的工作,因此我想编写一个函数,它的参数是 c++ 中的变量名称和变量名称需要在 ""引号中的 matlab。
问题:
由于该函数需要在“”(双引号)内传递变量名,我想传递一个字符串来代替引号内的 varMatlab。我尝试在字符串本身中插入“”,但在这种情况下似乎不起作用。任何帮助都会非常有帮助。
我写了下面的函数来做同样的事情,但是字符串 name
应该在我不知道如何传递的“”里面。
void putVar(double* var,int N, string name, Engine *ep){
double row = N, col = N;
mxArray *matlab = mxCreateDoubleMatrix(row, col, mxREAL);
double *pa = mxGetPr(matlab);
memcpy(pa, var, sizeof(double)*row*col);
engPutVariable(ep, "name" , matlab);
}
最佳答案
插入“作为\”。由于"是字符串的特殊符号,需要进行转义。所以带引号的字符串"Hello World"在C++中是这样的
std::cout << "\"Hello World\"\n";
问候托拜厄斯
关于c++ - 如何在 C++ 中将字符串传递给双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23004057/
我是一名优秀的程序员,十分优秀!