VB .NET中类似COBOL的结构体

3

我可以帮您将一段COBOL程序翻译成VB .NET。

在VB .NET中,是否有类似COBOL的结构体可用呢?

例如:

COBOL:

01 VAR1
    10  VAR11 PIC X
    10  VAR12 PIC X

MOVE 'AA' TO VAR1

接着,VAR11等于A,VAR12也等于A。

在VB NET中,有没有办法将一个字符串移动到结构的顶部标题,并且此结构的每个成员都取相应字符串的“一部分”?

谢谢。

2个回答

1
不。但VB.Net(它不是特定于VB的)String类提供了很多功能-您可以像数组一样索引它,可以请求Substring等内容。
不要尝试字面上复制COBOL程序的所有方面。寻找可以编写更清晰的VB代码的小胜利。

这个论坛是我的最后希望。我本来想避免创建一个模拟这些函数的类。谢谢! - Rafael Chacon
字符串是基于字符的,非单字节编码可能会弄乱事情。使用数据类型索引映射的字节数组可能是一种更好的方法。 - Joe Zitzelberger

0

这可能是一个误导,但是类似于:

Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)

需要帮忙吗?组级别的移动基本上是无类型的逐字节移动。也许可以谨慎地使用内存移动来满足需求?或者干脆让整个程序崩溃,因为它是值得用水泥围栏保护的精细代码。

使用这个可能还需要谨慎地使用

VarPtr(), StrPtr(), or ObjPtr()

获取指针。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接