91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

Struct結(jié)構(gòu)數(shù)據(jù)類(lèi)型

機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 來(lái)源:機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 作者:機(jī)器人及PLC自動(dòng)化 ? 2022-07-25 17:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

結(jié)構(gòu)數(shù)據(jù)類(lèi)型(Struct)

Struct類(lèi)型是一種由多個(gè)不同數(shù)據(jù)類(lèi)型元素組成的數(shù)據(jù)結(jié)構(gòu),其元素可以是基本數(shù)據(jù)類(lèi)型,也可以是Struct、數(shù)組等復(fù)雜數(shù)據(jù)類(lèi)型以及PLC數(shù)據(jù)類(lèi)型(UDT)等。Struct類(lèi)型嵌套Struct類(lèi)型的深度限制為 8 級(jí)。Struct類(lèi)型的變量在程序中可作為一個(gè)變量整體,也可單獨(dú)使用組成該Struct的元素。Struct 類(lèi)型可以在DB、OB/FC/FB接口區(qū)、PLC數(shù)據(jù)類(lèi)型(UDT) 處定義使用。

Struct數(shù)據(jù)類(lèi)型使用非常靈活,隨時(shí)可以使用,但是相對(duì)于PLC數(shù)據(jù)類(lèi)型 (UDT) 有以下缺點(diǎn),所以建議需要使用Struct類(lèi)型時(shí),可以使用PLC數(shù)據(jù)類(lèi)型(UDT)代替。

維護(hù)成本增加:如果對(duì)一個(gè)Struct進(jìn)行了多次復(fù)制,則在更改過(guò)程中該Struct也必需進(jìn)行相應(yīng)的多次更改。

Struct與 PLC 數(shù)據(jù)類(lèi)型(UDT)的相同結(jié)構(gòu)不兼容。

由于系統(tǒng)會(huì)檢查所有結(jié)構(gòu)元素的類(lèi)型是否匹配,因而會(huì)導(dǎo)致性能下降。

存儲(chǔ)空間要求增加:每個(gè)Struct都是一個(gè)單獨(dú)的對(duì)象,其描述信息將加載到PLC中。

Struct應(yīng)用案例

1. 單獨(dú)使用組成該Struct的元素時(shí),和普通的變量沒(méi)有區(qū)別,只是每出現(xiàn)一個(gè)Struct的嵌套層級(jí),變量名增加一個(gè)前綴,如圖1-2所示。

3e42ab64-0bf7-11ed-ba43-dac502259ad0.jpg

圖1 Struct的定義

3e649198-0bf7-11ed-ba43-dac502259ad0.jpg

圖2 Struct的使用

2. Struct可以將一種類(lèi)型變量放在一起,利于區(qū)分,如圖3-4所示。

3e89b19e-0bf7-11ed-ba43-dac502259ad0.jpg

圖3 原始結(jié)構(gòu)

3ea85518-0bf7-11ed-ba43-dac502259ad0.jpg

圖4 增加了Struct類(lèi)型的結(jié)構(gòu)

圖4和圖3功能明顯相同,但圖4相對(duì)圖3,分類(lèi)更加清晰。

3. 通訊程序中,通常可以把需要發(fā)送的數(shù)據(jù)放在一個(gè)Struct中,即看做一個(gè)整體,這樣在發(fā)送區(qū)只需填寫(xiě)一個(gè)變量即可,如圖5所示。

3ecf7774-0bf7-11ed-ba43-dac502259ad0.jpg

圖5 使用了圖4定義的Struct類(lèi)型

4. MOVE指令支持相同Struct類(lèi)型的直接傳送,如果傳送雙方是大量數(shù)據(jù),并且結(jié)構(gòu)相同,可以先分別將雙方數(shù)據(jù)建立在一個(gè)結(jié)構(gòu),然后用一個(gè)MOVE指令一次傳送即可,如圖6所示。

3f09f610-0bf7-11ed-ba43-dac502259ad0.jpg

程序中直接MOVE,即可傳送整個(gè)Struct,而不需要若干MOVE。并且,即使兩邊Struct中的對(duì)應(yīng)元素名稱(chēng)不同也可以傳送成功,如圖7所示。

3f8ef5ae-0bf7-11ed-ba43-dac502259ad0.jpg

圖7 Struct的傳送

審核編輯:彭靜

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

    關(guān)注

    5051

    文章

    14587

    瀏覽量

    486796
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7335

    瀏覽量

    94746
  • Struct
    +關(guān)注

    關(guān)注

    0

    文章

    31

    瀏覽量

    11266

原文標(biāo)題:結(jié)構(gòu)數(shù)據(jù)類(lèi)型(Struct)

文章出處:【微信號(hào):gh_a8b121171b08,微信公眾號(hào):機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于凌羽派的OpenHarmony北向應(yīng)用開(kāi)發(fā):ArkTS語(yǔ)法-數(shù)據(jù)類(lèi)型和變量聲明

    可以在程序執(zhí)行期間具有不同的值。使用TS風(fēng)格,聲明的時(shí)候使用冒號(hào)給出數(shù)據(jù)類(lèi)型。 let hi: string = \'hello\'; let num: number = 0; 2.2 常量聲明
    發(fā)表于 02-26 14:24

    睿遠(yuǎn)研究院丨IO-Link規(guī)范解讀(十五):數(shù)據(jù)類(lèi)型詳解

    通過(guò)示例展示了其結(jié)構(gòu)和傳輸方式,包括單個(gè)使用或打包使用的情形。 基礎(chǔ)數(shù)據(jù)類(lèi)型包括了 BooleanT、UIntegerT、IntegerT、Float32T、StringT、OctetStringT
    的頭像 發(fā)表于 01-14 18:25 ?5213次閱讀
    睿遠(yuǎn)研究院丨IO-Link規(guī)范解讀(十五):<b class='flag-5'>數(shù)據(jù)類(lèi)型</b>詳解

    Typedef在C語(yǔ)言中的應(yīng)用

    Typedef 在C語(yǔ)言中頻繁用以聲明一個(gè)已經(jīng)存在的數(shù)據(jù)類(lèi)型的同義字。也可以用預(yù)處理器做類(lèi)似的事。例如,思考一下下面的例子: #define dPS struct s * typedef
    發(fā)表于 12-22 13:53

    結(jié)構(gòu)體聲明與定義

    一樣,去聲明我們的結(jié)構(gòu)體操作,但是C語(yǔ)言中規(guī)定,聲明結(jié)構(gòu)體變量的時(shí)候,struct關(guān)鍵字是不可少的。 struct 結(jié)構(gòu)
    發(fā)表于 12-11 07:52

    typedef結(jié)構(gòu)體使用

    雖然結(jié)構(gòu)體的出現(xiàn)能夠讓我們有一個(gè)更科學(xué)的數(shù)據(jù)結(jié)構(gòu)來(lái)管理數(shù)據(jù),但是每次使用結(jié)構(gòu)體都需要struct...,未免顯得有些冗長(zhǎng)和麻煩。有了type
    發(fā)表于 12-08 07:04

    C語(yǔ)言程序的結(jié)構(gòu)

    定時(shí)器可用來(lái)進(jìn)行時(shí)間片的輪詢(xún)。基于以上的想法,構(gòu)造了下述數(shù)據(jù)類(lèi)型。   typedef unsigned char uInt8   typedef struct {   void (*proc
    發(fā)表于 11-26 08:12

    C語(yǔ)言自動(dòng)類(lèi)型轉(zhuǎn)換

    一、自動(dòng)類(lèi)型轉(zhuǎn)換 數(shù)據(jù)類(lèi)型存在自動(dòng)轉(zhuǎn)換的情況. 自動(dòng)轉(zhuǎn)換發(fā)生在不同數(shù)據(jù)類(lèi)型運(yùn)算時(shí),在編譯的時(shí)候自動(dòng)完成。 char類(lèi)型數(shù)據(jù)轉(zhuǎn)換為int
    發(fā)表于 11-25 08:04

    C語(yǔ)言強(qiáng)制類(lèi)型轉(zhuǎn)換

    強(qiáng)制類(lèi)型轉(zhuǎn)換是通過(guò)定義類(lèi)型轉(zhuǎn)換運(yùn)算來(lái)實(shí)現(xiàn)的。其一般形式為: (數(shù)據(jù)類(lèi)型) (表達(dá)式) 其作用是把表達(dá)式的運(yùn)算結(jié)果強(qiáng)制轉(zhuǎn)換成類(lèi)型說(shuō)明符所表示的類(lèi)型
    發(fā)表于 11-24 06:32

    C語(yǔ)言結(jié)構(gòu)體使用

    有時(shí)候需要將不同類(lèi)型數(shù)據(jù)組合為一個(gè)整體,以便于引用。例如,一名學(xué)生有學(xué)號(hào)、姓名、性別、年齡等屬性,如果針對(duì)每個(gè)屬性都單獨(dú)定義一個(gè)變量,那么當(dāng)有多名學(xué)生時(shí)變量就難以分清。結(jié)構(gòu)體就是用來(lái)管理不同
    發(fā)表于 11-12 08:30

    SQL 通用數(shù)據(jù)類(lèi)型

    SQL 通用數(shù)據(jù)類(lèi)型 數(shù)據(jù)庫(kù)表中的每個(gè)列都要求有名稱(chēng)和數(shù)據(jù)類(lèi)型。Each column in a database table is required to have a name and a
    的頭像 發(fā)表于 08-18 09:46 ?707次閱讀

    IEC101協(xié)議可以傳輸什么類(lèi)型數(shù)據(jù)

    IEC101協(xié)議作為電力系統(tǒng)遠(yuǎn)動(dòng)通信的核心標(biāo)準(zhǔn),其核心能力在于支持多種類(lèi)型數(shù)據(jù)的傳輸,滿(mǎn)足調(diào)度端與場(chǎng)站端(如變電站、發(fā)電廠)的實(shí)時(shí)監(jiān)控、控制及狀態(tài)感知需求。以下從數(shù)據(jù)類(lèi)型、傳輸模式及典型應(yīng)用場(chǎng)景三個(gè)
    的頭像 發(fā)表于 05-21 11:37 ?1001次閱讀

    程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)

    《程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)》重點(diǎn)闡述了三大方向內(nèi)容: 1. C語(yǔ)言學(xué)習(xí)中的痛點(diǎn):針對(duì)當(dāng)前工程師在C語(yǔ)言學(xué)習(xí)中的痛點(diǎn),如指針函數(shù)與函數(shù)指針,如何靈活應(yīng)用結(jié)構(gòu)體等。從變量的三要素(變量的類(lèi)型,變量的值和變量
    發(fā)表于 05-13 16:45

    詳解Prometheus的數(shù)據(jù)類(lèi)型

    對(duì)于 Prometheus 生態(tài)的監(jiān)控系統(tǒng),PromQL 是必備技能,本文著重點(diǎn)講解這個(gè)查詢(xún)語(yǔ)言,摻雜一些生產(chǎn)實(shí)踐場(chǎng)景,希望對(duì)你有所幫助。
    的頭像 發(fā)表于 05-13 09:50 ?1464次閱讀
    詳解Prometheus的<b class='flag-5'>數(shù)據(jù)類(lèi)型</b>

    C語(yǔ)言中結(jié)構(gòu)體與聯(lián)合體的深度解析:內(nèi)存布局與應(yīng)用場(chǎng)景

    一、基礎(chǔ)概念與核心差異 1.1 結(jié)構(gòu)體(Struct)的本質(zhì) **結(jié)構(gòu)體是C語(yǔ)言中實(shí)現(xiàn)數(shù)據(jù)封裝的基石,其核心特征在于內(nèi)存獨(dú)立性。每個(gè)成員變量在內(nèi)存中按聲明順序依次排列,形成連續(xù)的內(nèi)存塊
    發(fā)表于 04-08 09:18

    全套C語(yǔ)言培訓(xùn)資料—PPT課件

    全套C語(yǔ)言培訓(xùn)資料,共427頁(yè),13個(gè)章節(jié):C語(yǔ)言概述、程序的靈魂—算法、數(shù)據(jù)類(lèi)型 & 運(yùn)算符與表達(dá)式、順序程序設(shè)計(jì)、選擇結(jié)構(gòu)程序設(shè)計(jì)、循環(huán)控制、數(shù)組、函數(shù)、預(yù)處理命令、指針、結(jié)構(gòu)
    發(fā)表于 03-12 14:50