0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何處理C Dll中的字符串?dāng)?shù)組參數(shù)

jf_xutpKvFS ? 來源:LabVIEW QT 修煉之路 ? 2023-04-25 14:02 ? 次閱讀

LabVIEW:2015

群里小伙伴在項(xiàng)目中用到的一硬件需要調(diào)用C/C++編寫的Dll,其中一個(gè)函數(shù)用到了字符串?dāng)?shù)組參數(shù),他折騰了許久不知道在LabVIEW中調(diào)用時(shí)如何處理這個(gè)類型,如下圖所示:

5ff00a30-e320-11ed-ab56-dac502259ad0.jpg

一頓輸出之后問題得到解決。

6016aafa-e320-11ed-ab56-dac502259ad0.png

有關(guān)C/C++中稍微復(fù)雜一點(diǎn)與字符串相關(guān)的一些類型參數(shù),在LabVIEW處理起來還是有一點(diǎn)小麻煩的,主要是涉及到內(nèi)存分配,在使用LabVIEW時(shí)幾乎不用考慮這個(gè)問題,但在C語言中可不行,同時(shí)LabVIEW中調(diào)用的庫函數(shù)節(jié)點(diǎn)支持的參數(shù)類型并沒有字符串?dāng)?shù)組,那么如何解決這個(gè)問題呢?

如果你很熟悉C語言,那么字符串?dāng)?shù)組其實(shí)就是一個(gè)指針數(shù)組,指針指向的是一個(gè)字符串,說到這里你應(yīng)該明白了在LabVIEW里面去如何處理它了,可以使用一個(gè)數(shù)值數(shù)組,不過這個(gè)數(shù)值代表的是內(nèi)存地址(即指針),然后再去解析地址即可。接下來動(dòng)手驗(yàn)證。

先用C/C++編寫一個(gè)帶字符串?dāng)?shù)組參數(shù)的函數(shù),然后編譯成Dll供調(diào)用,如下圖所示:

6050601a-e320-11ed-ab56-dac502259ad0.png

60655a06-e320-11ed-ab56-dac502259ad0.png

接著用C語言去調(diào)用該Dll,測試結(jié)果符合預(yù)期,如下圖所示:

607db466-e320-11ed-ab56-dac502259ad0.png

接下來在LabVIEW中進(jìn)行調(diào)用測試,其中需要用到有關(guān)內(nèi)存分配和指針解析的VI,在LabVIEW的安裝目錄下(LabVIEW 20xxvi.libUtilityimportsl),如下圖所示:

609a2dda-e320-11ed-ab56-dac502259ad0.png

程序框圖實(shí)現(xiàn)如下圖所示,運(yùn)行結(jié)果符合預(yù)期。

60b509ca-e320-11ed-ab56-dac502259ad0.png

其中調(diào)用庫函數(shù)節(jié)點(diǎn)配置如下圖所示:

60d89660-e320-11ed-ab56-dac502259ad0.png

60ed95c4-e320-11ed-ab56-dac502259ad0.png

下載鏈接:https://pan.baidu.com/s/1-cNLXTelzTqv-aU5I-swLg

提取碼:r605

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • LabVIEW
    +關(guān)注

    關(guān)注

    1958

    文章

    3651

    瀏覽量

    321484
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7581

    瀏覽量

    135603
  • 數(shù)組
    +關(guān)注

    關(guān)注

    1

    文章

    412

    瀏覽量

    25862

原文標(biāo)題:如何處理C Dll中的字符串?dāng)?shù)組參數(shù)

文章出處:【微信號:LabVIEW QT 修煉之路,微信公眾號:LabVIEW QT 修煉之路】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    C++字符串string

    string是C++編程語言中的字符串。在C++字符串處理可以使用
    的頭像 發(fā)表于 07-10 00:26 ?1148次閱讀
    <b class='flag-5'>C</b>++<b class='flag-5'>字符串</b>string

    matlab如何調(diào)用C標(biāo)準(zhǔn)的dll字符串數(shù)組

    如題,有一個(gè)用labview創(chuàng)建的C標(biāo)準(zhǔn)的dll,分別有一個(gè)輸入輸出字符串類型數(shù)組,在matlab下如何調(diào)用該dll,輸入
    發(fā)表于 06-16 13:08

    數(shù)組、向量和字符串 實(shí)驗(yàn)

    實(shí)驗(yàn) 5 數(shù)組、向量和字符串一、實(shí)驗(yàn)?zāi)康?1. 掌握J(rèn)ava數(shù)組定義、引用2. 掌握向量的基本概念和應(yīng)用技術(shù)3. 掌握使用
    發(fā)表于 09-23 19:00 ?1529次閱讀

    C語言字符串轉(zhuǎn)數(shù)字實(shí)現(xiàn)方法

    C/C++語言中沒有專門的字符串變量,通常用字符數(shù)組來存放字符串。
    發(fā)表于 11-14 17:50 ?1.3w次閱讀

    C語言的字符串處理函數(shù)

    指針是神奇的,指向整型的指針int *p1,可以操作整型數(shù)組int a[];指向字符型的指針char *p2,可以操作字符數(shù)組字符串)ch
    發(fā)表于 07-24 17:37 ?4次下載
    <b class='flag-5'>C</b>語言的<b class='flag-5'>字符串</b><b class='flag-5'>處理</b>函數(shù)

    電子表格字符串數(shù)組轉(zhuǎn)換和改良LabVIEW資料免費(fèi)下載

    由于labiview自帶的電子表格字符串數(shù)組轉(zhuǎn)換子VI存在輸出的數(shù)組會被字符串的單個(gè)回車影響,這會導(dǎo)致單元格帶有回車的
    發(fā)表于 07-03 08:00 ?9次下載
    電子表格<b class='flag-5'>字符串</b>至<b class='flag-5'>數(shù)組</b>轉(zhuǎn)換和改良LabVIEW資料免費(fèi)下載

    用指針實(shí)現(xiàn)字符串拷貝的程序和字符型指針變量與字符數(shù)組的區(qū)別說明

    字符串是存放在字符數(shù)組的,對字符數(shù)組
    發(fā)表于 11-05 16:15 ?2次下載
    用指針實(shí)現(xiàn)<b class='flag-5'>字符串</b>拷貝的程序和<b class='flag-5'>字符</b>型指針變量與<b class='flag-5'>字符</b><b class='flag-5'>數(shù)組</b>的區(qū)別說明

    C語言-字符串處理

    字符串C語言里使用非常多,因?yàn)楹芏鄶?shù)據(jù)處理都是文本,也就是字符串,特別是設(shè)備交互、web網(wǎng)頁交互返回的幾乎都是文本數(shù)據(jù)。 這篇文章就介紹字符串
    的頭像 發(fā)表于 08-14 10:05 ?1696次閱讀

    C語言字符數(shù)組字符串有什么區(qū)別

    用來存放字符數(shù)組稱為字符數(shù)組。字符數(shù)組的各個(gè)元素依次存放
    的頭像 發(fā)表于 02-17 14:27 ?3191次閱讀

    簡述數(shù)組字符串組的使用

    在Python我們通常也會用到數(shù)組字符串組并且能快速方便的構(gòu)建出來,那么在java構(gòu)建數(shù)組是否是類似的呢?
    的頭像 發(fā)表于 02-23 11:09 ?447次閱讀
    簡述<b class='flag-5'>數(shù)組</b>及<b class='flag-5'>字符串</b>組的使用

    C語言字符串的引用方式

    C語言程序,字符串是存放在字符數(shù)組的。 2. 用字符
    的頭像 發(fā)表于 03-10 14:57 ?1789次閱讀

    c語言字符串定義

    C語言是一種強(qiáng)大而廣泛使用的編程語言,字符串是其中一個(gè)非常重要的概念。在C語言中,字符串是由一系列字符組成的
    的頭像 發(fā)表于 11-24 10:02 ?1660次閱讀

    字符數(shù)組字符串有沒有區(qū)別?

    字符數(shù)組字符串有沒有區(qū)別?
    的頭像 發(fā)表于 11-30 16:39 ?550次閱讀

    C語言字符串編譯函數(shù)介紹

    C語言中,字符串實(shí)際上是使用null字符O'終止的一維字符數(shù)組。因此,一個(gè)以null結(jié)尾的
    的頭像 發(fā)表于 03-07 16:18 ?438次閱讀
    <b class='flag-5'>C</b>語言<b class='flag-5'>字符串</b>編譯函數(shù)介紹

    labview字符串數(shù)組轉(zhuǎn)化為數(shù)值數(shù)組

    在LabVIEW,將字符串數(shù)組轉(zhuǎn)換為數(shù)值數(shù)組是一項(xiàng)常見的任務(wù),尤其是在處理數(shù)據(jù)采集、信號處理
    的頭像 發(fā)表于 09-04 17:47 ?1100次閱讀