gpt4 book ai didi

string - 是否可以定义一个返回文本字符串的 CAPL 函数?

转载 作者:行者123 更新时间:2023-12-02 21:16:55 55 4
gpt4 key购买 nike

我在 Vector CANoe 中开发 CAPL 脚本,我需要定义几个返回文本字符串的函数。在 C 语言中,我会写这样的东西:

char * ErrorCodeToMsg(int code)

char [] ErrorCodeToMsg(int code)

在 CAPL 中,两个定义都会失败并出现解析错误。到目前为止我想出的唯一可行的解​​决方案是:

variables {
char retval[256];
}

void ErrorCodeToMsg(int code) {
char [] msg = "Hello word";
strncpy(retval, msg, 256);
}

当然,这非常难看,因为每次调用 ErrorCodeToMsg 都需要两条语句而不是一条。有更好的办法吗?

最佳答案

您必须像使用基于字符串的函数一样执行此操作:

 void ErrorCodeToMsg(char buffer[], int code){
buffer = myListOfCodes[code];
}

该值将使用其引用值存储在缓冲区中。 Capl 中不可能返回字符串。这就是为什么您无法使用 @ 选择器访问字符串系统变量。

关于string - 是否可以定义一个返回文本字符串的 CAPL 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30932794/

55 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com