Visual Basic .NET 中的 C 样式指针

2023-12-13

我研究 Visual Basic .NET 中的 C 风格指针有一段时间了。我遇到过http://support.microsoft.com/kb/199​​824?wa=wsignin1.0但我不知道这是否正确或如何应用。我已经使用 c 中的程序编写了一个简单的指针,我希望它将逐行转换为 Visual Basic,并在必要时添加注释。 这是C:

int main()
{
    int *myNumber=3; //the * means it's a pointer

    doubleIt(*myNumber); //we use the void, the * means it returns a value not address
    printf("%d",myNumber); //we print the variable

    return 0; //we terminate the function
}

void doubleIt(int input)
{
    input*=2; //double the input
}

您的 C 代码存在一些问题,其中之一是:

int *myNumber=3; //the * means it's a pointer  

如果不先为其分配内存,则无法为这样的指针赋值。

所以你会执行以下操作:

int* myNumber = malloc(sizeof(int));
*myNumber  = 3;
free(myNumber);

VB.NET 没有指针的概念。一切(即每Object) 是一个引用,这与不使用 Interop 时获得的指针非常接近。如果您需要进行互操作,那么IntPtrtype 可用于表示指针类型。

你的 VB.NET 程序可能看起来像这样:(如果语法不完全正确,请原谅我,已经有一段时间了)

Sub Main
    Dim myNumber As Integer = 3
    doubleIt(myNumber)
    Console.WriteLine(myNumber)
End Sub

Sub doubleIt(ByRef val As Integer)
    val *= 2
End Sub
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Visual Basic .NET 中的 C 样式指针 的相关文章

  • 创建 DirectoryEntry 实例以供测试使用

    我正在尝试创建 DirectoryEntry 的实例 以便可以使用它来测试将传递 DirectoryEntry 的一些代码 然而 尽管进行了很多尝试 我还是找不到实例化 DE 并初始化它的 PropertyCollection 的方法 我有
  • 属性对象什么时候创建?

    由于属性实际上只是附加到程序集的元数据 这是否意味着属性对象仅根据请求创建 例如当您调用 GetCustomAttributes 时 或者它们是在创建对象时创建的 或者 前两个的组合 在由于 CLR 的属性扫描而创建对象时创建 从 CLR
  • C++:无法使用scoped_allocator_adaptor传播polymorphic_allocator

    我有一个vector
  • 如何在没有 Control.Invoke() 的情况下从后台线程修改控件属性

    最近 我们遇到了一些旧版 WinForms 应用程序 我们需要更新一些新功能 在专家测试该应用程序时 发现一些旧功能被破坏 无效的跨线程操作 现在 在您认为我是新手之前 我确实有一些 Windows 窗体应用程序的经验 我不是专家 但我认为
  • SSH 主机密钥指纹与模式 C# WinSCP 不匹配

    我尝试通过 WinSCP 使用 C 连接到 FTPS 服务器 但收到此错误 SSH 主机密钥指纹 与模式不匹配 经过大量研究 我相信这与密钥的长度有关 当使用 服务器和协议信息 下的界面进行连接时 我从 WinSCP 获得的密钥是xx xx
  • 如何针对 Nancy 中的 Active Directory 进行身份验证?

    这是一篇过时的文章 但是http msdn microsoft com en us library ff650308 aspx paght000026 step3 http msdn microsoft com en us library
  • 使用 Google Analytics API 在 C# 中显示信息

    我一整天都在寻找一个好的解决方案 但谷歌发展得太快了 我找不到有效的解决方案 我想做的是 我有一个 Web 应用程序 它有一个管理部分 用户需要登录才能查看信息 在本节中 我想显示来自 GA 的一些数据 例如某些特定网址的综合浏览量 因为我
  • C# 用数组封送结构体

    假设我有一个类似于 public struct MyStruct public float a 我想用一些自定义数组大小实例化一个这样的结构 在本例中假设为 2 然后我将其封送到字节数组中 MyStruct s new MyStruct s
  • HttpClient 像浏览器一样请求

    当我通过 HttpClient 类调用网站 www livescore com 时 我总是收到错误 500 可能服务器阻止了来自 HttpClient 的请求 1 还有其他方法可以从网页获取html吗 2 如何设置标题来获取html内容 当
  • 为什么模板不能位于外部“C”块内?

    这是一个后续问题一个答案 https stackoverflow com questions 4866433 is it possible to typedef a pointer to extern c function type wit
  • 在 ASP.Net Core 2.0 中导出到 Excel

    我曾经使用下面的代码在 ASP NET MVC 中将数据导出到 Excel Response AppendHeader content disposition attachment filename ExportedHtml xls Res
  • Windows 窗体不会在调试模式下显示

    我最近升级到 VS 2012 我有一组在 VS 2010 中编码的 UI 测试 我试图在 VS 2012 中启动它们 我有一个 Windows 窗体 在开始时显示使用 AssemblyInitialize 属性运行测试 我使用此表单允许用户
  • 是否有比 lex/flex 更好(更现代)的工具来生成 C++ 分词器?

    我最近将源文件解析添加到现有工具中 该工具从复杂的命令行参数生成输出文件 命令行参数变得如此复杂 以至于我们开始允许它们作为一个文件提供 该文件被解析为一个非常大的命令行 但语法仍然很尴尬 因此我添加了使用更合理的语法解析源文件的功能 我使
  • .NET 选项将视频文件流式传输为网络摄像头图像

    我有兴趣开发一个应用程序 它允许我从 xml 构建视频列表 包含视频标题 持续时间等 并将该列表作为我的网络摄像头流播放 这意味着 如果我要访问 ustream tv 或在实时通讯软件上激活我的网络摄像头 我的视频播放列表将注册为我的活动网
  • C 中的位移位

    如果与有符号整数对应的位模式右移 则 1 vacant bit will be filled by the sign bit 2 vacant bit will be filled by 0 3 The outcome is impleme
  • 检查 url 是否指向文件或页面

    我们需要以下内容 如果文件确实是文件 则从 URL 下载该文件 否则 如果它是一个页面 则什么也不做 举个简单的例子 我有以下命令来下载文件 My Computer Network DownloadFile http www wired c
  • 什么是 C 语言的高效工作流程? - Makefile + bash脚本

    我正在开发我的第一个项目 该项目将跨越多个 C 文件 对于我的前几个练习程序 我只是在中编写了我的代码main c并使用编译gcc main c o main 当我学习时 这对我有用 现在 我正在独自开展一个更大的项目 我想继续自己进行编译
  • 如何构建印度尼西亚电话号码正则表达式

    这些是一些印度尼西亚的电话号码 08xxxxxxxxx 至少包含 11 个字符长度 08xxxxxxxxxxx 始终以 08 开头 我发现这个很有用 Regex regex new Regex 08 0 9 0 9 0 9 0 9 0 9
  • Bing 地图运行时错误 Windows 8.1

    当我运行带有 Bing Map 集成的 Windows 8 1 应用程序时 出现以下错误 Windows UI Xaml Markup XamlParseException 类型的异常 发生在 DistanceApp exe 中 但未在用户
  • C++ 成员函数中的“if (!this)”有多糟糕?

    如果我遇到旧代码if this return 在应用程序中 这种风险有多严重 它是一个危险的定时炸弹 需要立即在应用程序范围内进行搜索和销毁工作 还是更像是一种可以悄悄留在原处的代码气味 我不打算writing当然 执行此操作的代码 相反

随机推荐

  • 需要找到页面上隐藏div的高度(设置为display:none)

    我需要测量隐藏元素内部的 div 的 offsetHeight div style display none div Lorem Ipsum dolor sit amet div div 父级divmust设置为 display none
  • 如何制作固定位置的菜单栏?

    我想设计我的菜单栏像这样 当您向下滚动时 它固定在网站的顶部 而当页面加载时 它不会固定在该位置 如何用 CSS 来完成呢 您想要的是 粘性导航栏 菜单 最简单的方法是将以下 CSS 添加到菜单 导航栏 position fixed top
  • C# 2.0:MethodBase.GetCurrentMethod() 可以返回 null 吗?

    我正在追踪 NullReferenceException 并且官方文档是缺乏 这是 C 2 0 代码 看看 Reflector 它看起来可以 MethodImpl MethodImplOptions NoInlining public st
  • 当我尝试上传 Microsoft 商店时,UWP/Xamarin 在提交测试中崩溃

    我正在使用 Xamarin Forms 开发一个带有 SignalR 的消息发送应用程序 我在本地和 Android 上测试了无数次 它运行良好 没有崩溃 但是当他们进行测试以将其上传到微软商店时 他们报告说我的应用程序崩溃了 根据应用程序
  • python 中 perluniprops 的等价物是什么?

    In perl 有perlunipropsUnicode 7 的索引 http perldoc perl org perluniprops html我可以执行以下操作来填充开始和结束标点符号 s p Open Punctuation 1 g
  • 为什么我无法设置 cookie 并重定向?

    我在设置 cookie 和执行操作时遇到问题302重定向在chrome中 cookie没有被设置 我没有测试过safari 在其他浏览器中我遇到了同样的问题 直到我添加Path 到 cookie 现在它可以工作了 这是标题的样子 状态是30
  • 为什么 Integer a=10 在 java 中是有效的语句? [复制]

    这个问题在这里已经有答案了 据我所知 Integer 是一个包装器class对于整数 所以必须创建一个对象来初始化a的值 Integer x new Integer 10 But Integer x 10 似乎工作完美 有人可以解释一下吗
  • 安装 coremltools 时出错

    我正在研究 Core ML Apple iOS 框架 我已经读过安装 coremltools 来创建自己的模型 我已经安装了pythonsudo python Users administrator Downloads get pip py
  • MongoDB 字段名称中不允许使用哪些字符?

    我当然明白了 和 SPACE 是不允许的 还有其他禁用字符吗 您可以在字段名称中使用任何不属于的 UTF8 字符 特殊 包含 或以 开头 https jira mongodb org browse SERVER 3229 https sta
  • 注入非角度 JS 库

    在我们的项目中 我们使用 NPM 和 Browserify 进行第三方依赖管理 它与 AngularJS 结合使用效果很好 感谢 CommonJS 模块 以下代码显示了依赖结构 它与 Angular 的依赖注入配合得很好 function
  • 如何使用末尾带有 # 的 Uri.parse()

    我尝试使用 GSM 代码通过 Android 应用程序转接电话 例如 如果我致电 21 otherNumber 我所有的电话都将转接至其他号码 My code Uri transfert Uri parse tel 21 numero In
  • C++ eof() 问题 - 永远不会返回 true?

    所以我正在尝试读取这个文件 一切看起来应该可以工作 但在运行时程序超时并停止工作 我必须关闭它 到底是怎么回事 我怀疑 oef 测试永远不会返回 true 并且它会不断在文件中查找更多内容 我没有在文本文件中拖动空行 我疯狂地尝试调试这个
  • 在 Windows 中找不到命令 php

    我已经在 Windows 7 中安装了 xampp 服务器 我已经检查了浏览器的工作情况 但我正在尝试运行 php v 命令提示符 我收到以下错误消息 php is not recognized as an internal or exte
  • 使用 Laravel 5.8 / Cashier / Stripe 设置订阅时遇到问题

    我按照这个教程一步步操作 https appdividend com 2018 12 05 laravel stripe payment gateway integration tutorial with example 然而 当我去测试它
  • 在文件中查找字符串的最快方法

    我有一个不超过 10KB 的日志文件 文件大小最大可达 2 MB 我想查找文件中是否至少出现一组这些字符串 这些字符串将位于不同的行 例如 行动 输入 结果 我至少需要知道文件中是否存在上述一组 我已经做了大约 100 次测试 每次日志都不
  • PHP 正则表达式在冒号之前转换文本以进行链接

    我需要找到第一次出现的冒号 并获取之前的完整字符串并将其附加到链接中 e g username twitter nice site RT www google com visited 需要转换为 a href http twitter co
  • 用于 Web 开发的 iOS Touch ID

    我目前正在尝试找到一种方法来构建响应式网站 但是一旦网站在 iOS 设备上加载 我想使用新的 iOS Touch ID api 来允许会员登录 我知道当然可以使用 Native 以及 Cordova 来做这样的事情 http cordova
  • 在 pagerAdapter 中的片段之间发送数据

    您好 我正在尝试在两个片段之间发送数据 armarFragment 到 cocinaFragment 但我不知道该怎么做 因为两者都在同一个 Activity tabsActivity 中 该 Activity 实现了 pagerAdapt
  • 位置之前的第一个索引

    我有一个字符串和该字符串中的索引 并且想要获取该索引之前的子字符串的第一个位置 例如 在字符串中 this is a test string that contains other string for testing 是否有一个函数 给定
  • Visual Basic .NET 中的 C 样式指针

    我研究 Visual Basic NET 中的 C 风格指针有一段时间了 我遇到过http support microsoft com kb 199 824 wa wsignin1 0但我不知道这是否正确或如何应用 我已经使用 c 中的程序