我正在开发基于 Java 构建的某个应用程序。Java 层与 C++ 层对话,后者执行从数据库形成 sql 查询的逻辑并将结果返回给 Java 层。
用一个更简单的例子:
在Java方面
nameField = new JTextField(20) //20 chars max length
name = t.getText() // name is sent to CPP layer
在 CPP 层上,接收来自 java 层的名称并将其存储在局部变量中,例如 cppName。我对 CPP 层中使用的变量声明感到困惑。他们中的大多数是这样声明的:
char cppName[20*4+1]
我想知道这里20*4+1的意义。在 cpp 端声明所有变量大小为 javaSize*4+1 的原因。