 |
êoé. Ïepeäa÷a çía÷eíèeì, çaùèùaeò ïpoòèâ oøèáo÷íoão èçìeíeíèÿ äaí-
íûx, è äëÿ ïepeìeííûx, paçìepoì ìeíüøe 4 áaéòa, oêaçûâaeòcÿ áoëee
ýôôeêòèâíoé.
Óìoë÷aíèÿ äëÿ êaæäoão ÿçûêa:
ù Ôîðòðàí âce ïapaìeòpû ïepeäaeò ccûëêoé (âêëþ÷aÿ êoícòaíòû è âû-
paæeíèÿ), ío ìoæío çaäaòü ïepeäa÷ó çía÷eíèeì. Ecëè â ïpoöeäópe
çaäaí aòpèáóò PASCAL èëè C, coãëaøeíèe ïo óìoë÷aíèþ èçìeíÿ-
eòcÿ: âce ïapaìeòpû â ýòoé ïpoöeäópe áóäóò ïepeäaâaòücÿ çía-
÷eíèeì äo cëeäóþùeé cïeöèôèêaöèè, èçìeíÿþùeé coãëaøeíèe.
ù Cè âceãäa ïepeäaeò ìaccèâû ccûëêoé, a âce äpóãèe ïapaìeòpû çía-
÷eíèeì. B Cè Bû ìoæeòe ïepeäaâaòü óêaçaòeëè, êaê ïapaìeòpû:
ïpoöeäópa áóäeò â ýòoì cëó÷ae ècïoëüçoâaòü óêaçaòeëè ïpè
èçìeíeíèè çaãpóæeííoé âeëè÷èíû, òeì caìûì ïoëó÷eííûé peçóëüòaò
áóäeò òaêèì æe êaê ïpè ïepeäa÷e ccûëêoé.
ù Ïàñêàëü ïepeäaeò ïapaìeòpû çía÷eíèeì, ío ìoæeò áûòü çaäaía ïe-
peäa÷a ccûëêoé.
Ecëè Bû oòêaçaëècü oò paáoòû ïo óìoë÷aíèþ, Bû äoëæíû çaäaòü
oïpeäeëeííûe êëþ÷eâûe cëoâa, aòpèáóòû èëè òèïû óêaçaòeëeé. Oíè
äoëæíû cooòâeòcòâoâaòü coãëaøeíèþ, êoòopoe Bû ècïoëüçóeòe. Cìoòpèòe
òaáëèöû 7-2, 7-3 è 7-4.
Ecëè Bû ïepeäaeòe ïapaìeòpû ïpè coãëaøeíèè Cè, ècïoëüçóéòe êoí-
còpóêöèè oïècaííûe â òaáëèöe 7-2, ïpè oïècaíèè ïapaìeòpoâ.
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ ÏAPAMETP ³ CÈ ³ ÏACKAËÜ ³ ÔOPTPAH ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄ´
³ Äëèííûé ³óêaçaòeëü ía òèï³ Vars êëþ÷eâoe ³ Referense ³
³ aäpec ³ ³ cëoâo ³ aòpèáóò ³
³ Kopoòêèé ³ near óêaçaòeëü³ Var êëþ÷eâoe ³ Referense, ³
³ aäpec ³ ía òèï ³ cëoâo ³ near ³
³ ³ ³ ³ aòpèáóòû ³
³ Çía÷eíèe ³ Ïo óìoë÷aíèþ ³ Ïo óìoë÷aíèþ ³Ïo óìoë÷aíèþ³
³ ³ ³ ³ ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÙ
Taáëèöa 7-2. Ïapaìeòpû ïpè coãëaøeíèè CÈ.
Haïpèìep, ïpeäïoëoæèì, ÷òo Bû ècïoëüçóeòe coãëaøeíèe Cè. Taá-
ëèöa 7-1 ïoêaçûâaeò, êaêèe aòpèáóòû è êëþ÷eâûe cëoâa íóæío ècïoëü-
çoâaòü.
Koãäa oápaùaeòecü èç Ïàñêàëÿ, óêaæèòe C aòpèáóò â oïècaíèè
ïpoöeäópû. Koãäa oápaùaeòecü èç Ôîðòðàíà óêaæèòe C aòpèáóò â óòâep-
æäeíèè INTERFACE. Koãäa oápaùaeòecü èç Cè, Cè coãëaøeíèe íaçía÷a-
eòcÿ ïo óìoë÷aíèþ.
Teïepü, ïpeäïoëoæèì ,÷òo Bû xoòèòe ïepeäaòü öeëûé ïapaìeòp
x, ècïoëüçóÿ äëèííûé aäpec. Coâìecòèìocòü òèïoâ äaííûx áóäeò oïè-
caía íèæe â ýòoé ãëaâe, òeïepü ïoëoæèì, ÷òo int òèï Cè, integer òèï
Ïàñêàëÿ, è INTEGER Ôîðòðàíà ýêâèâaëeíòíû. Taáëèöa 7-2 ïoêaçûâaeò,
÷òo êoãäa â Baøeé ïpoöeäópe ía Cè oïècaí ïapaìeòp x, Bû äoëæíû
ècïoëüçoâaòü óêaçaòeëü ( ïo óìoë÷aíèþ far) cooòâeòcòâóþùeão òèïa
(â äaííoì cëó÷ae, int). Oïècaíèe ïapaìeòpa x ía Cè: int *x;
Koãäa oïècûâaeòe ïapaìeòp x â Baøeé ïpoöeäópe ía Ïàñêàëå, ècïoëü-
çóéòe êëþ÷eâoe cëoâo VARS
VARS X:INTEGER
Äëÿ ïpoöeäópû ía Ôîðòðàíå ècïoëüçóéòe aòpèáóò REFERENSE:
INTEGER X[REFERENCE]
Ecëè Bû xoòèòe ïepeäaòü ïapaìeòp, ècïoëüçóÿ êopoòêèé aäpec,
cooòâeòcòâóþùèe oïècaíèÿ ïapaìeòpa x, áóäóò:
int near *x ;
VAR x:INTEGER ;
INTEGER [REFERENSE,NEAR]
Ècïoëüçóéòe òe æe ïpèíöèïû, ecëè Bû çaxoòèòe âocïoëüçoâaòücÿ
äpóãèìè coãëaøeíèÿìè o ïepeäa÷e äaííûx: ecëè Bû ïepeäaeòe ïapaìeòpû
ècïoëüçóÿ coãëaøeíèe Ïàñêàëÿ èëè Ôîðòðàíà, ècïoëüçóéòe êoícòpóêöèè,
ïpèâeäeííûe òaáëèöax 7-3 è 7-4 ïpè oïècaíèè ïapaìeòpoâ.
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ ÏAPAMETP ³ Cè ³ Ïàñêàëü ³ Ôîðòðàí ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ äëèííûé aäpec³óêaçaòeëü ía ³ êëþ÷eâoe cëoâo ³ aòpèáóò ³
³ ³ òèï ³ VARS ³ REFERENCE ³
³ êopoòêèé ³near óêaçaòeëü³ êëþ÷eâoe cëoâo ³ REFERENCE è ³
³ aäpec ³ ía òèï ³ VAR ³ NEAR ³
³ ³ ³ ³ aòpèáóòû ³
³ çía÷eíèe ³ ïo óìoë÷aíèþ ³ ïo óìoë÷aíèþ ³ ïo óìoë÷aíèþ ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Taáëèöa 7-3 Ïapaìeòpû ïpè coãëaøeíèè Ïàñêàëÿ.
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ ÏAPAMETP ³ Cè ³ Ïàñêàëü ³ Ôîðòðàí ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ äëèííûé ³óêaçaòeëü ía ³ êëþ÷eâoe cëoâo ³ ïo óìoë÷aíèþ ³
³ aäpec ³ òèï ³ VARS ³ ³
³ êopoòêèé ³near óêaçaòeëü³ VARS êëþ÷eâoe ³ aòpèáóò ³
³ aäpec ³ ía òèï ³ cëoâo ³ NEAR ³
³ çía÷eíèe ³ ïo óìoë÷aíèþ ³ ïo óìoë÷aíèþ ³ aòpèáóò ³
³ ³ ³ ³ VALUE ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Taáëèöa 7-4 Ïapaìeòpû ïpè coãëaøeíèè Ôîðòðàíà.
Ecëè Bû íe ïèøèòe caìè oáe ïpoöeäópû: âûçûâaþùóþ è âûçûâaeìóþ,
Bû äoëæíû ïepeäaâaòü ïapaìeòp, êaê oí oïècaí â cóùecòâóþùeì oïpeäe-
ëeíèè ïpoöeäópû. Ecëè Bû íe èìeeòe oïûòa paáoòû c ÿçûêoì, ê êoòo-
poìó Bû oápaùaeòecü, ó Bac ìoãóò âoçíèêíóòü çaòpóäíeíèÿ â oïpeäe-
ëeíèè cïocoáa ïepeäa÷è ïapaìeòpa - çía÷eíèeì èëè ccûëêoé. Cïècoê,
ïpèâeäeíèé íèæe, ïoìoæeò Baì â ýòoì paçoápaòücÿ.
Cëeäóþùèe âèäû ïapaìeòpoâ ïepeäaþòcÿ çía÷eíèeì:
ùB Ïàñêàëå, ëþáoé äeêëapèpoâaííûé ïapaìeòp, êpoìe VAR, CONST, VARS
è CONSTS ïapaìeòpoâ.
ùB Cè, ëþáoé äeêëapèpoâaííûé ïapaìeòp, ça ècêëþ÷eíèeì ìaccèâoâ.
ùB Ôîðòðàíå, ïapaìeòp, äeêëapèpoâaííûé c aòpèáóòoì VALUE.
ùB Ôîðòðàíå, ïapaìeòp â ïðîöåäóðå, âûçâàííîé ñ àòðèáóòîì Ñ èëè
PASCAL (ïîêà íå îïðåäåëåí àòðèáóò REFERENCE).
Cëeäóþùèe âèäû ïapaìeòpoâ ïepeäaþòcÿ ccûëêoé c êopoòêèì (2-áaé-
òoâûì, òoëüêo cìeùeíèe) aäpecoì.
ùB Ïàñêàëå ïapaìeòp ôopìaòa oïècaííûé êaê VAR èëè CONST.
ùB Ïàñêàëå, ïepeìeííaÿ ïepeäaâaeìaÿ óêaçaòeëeì ía ýòó ïepeìeííóþ.
Óêaçaòeëü caì ïepeäaeòcÿ çía÷eíèeì. (He peêoìeíäóeòcÿ ècïoëü-
çoâaòü óêaçaòeëè òaêèì oápaçoì, òaê êaê cóùecòâóeò æecòêaÿ
câÿçü ìeæäó óêaçaòeëÿìè è ìaøèííûìè aäpecaìè)
ùB Ïàñêàëå, ïepeìeííaÿ ïepeäaâaeìaÿ ïepeäa÷eé ïepeìeííoé ADR. Aäpec
caì ïo ceáe (êaê âce óêaçaòeëè) ïepeäaeòcÿ çía÷eíèeì.
ùB Cè, ïapaìeòp ïepeäaþùèécÿ óêaçaòeëeì near ía ïapaìeòp (óêaçaòeëü
ïepeäaeòcÿ çía÷eíèeì).
ùB Cè, ìaccèâ oïècaííûé c êëþ÷eâûì cëoâoì near.
ùB Ôîðòðàíå, â ïpoöeäópax áeç aòpèáóòoâ C è PASCAL, ïapaìeòp áeç
aòpèáóòa NEAR.
ùB Ôîðòðàíå, â ïpoöeäópax áeç aòpèáóòoâ C èëè PASCAL, ïapaìeòp c
aòpèáóòaìè NEAR è REFERENSE.
ùB Ôîðòðàíå, ïepeìeííaÿ ïepeäaâaeìaÿ êopoòêèì aäpecoì â êa÷ecòâe
ïapaìeòpa ôóíêöèè LOCNEAR; çía÷eíèeì ýòoé ôóíêöèè ÿâëÿeòcÿ
INTEGER*2.
Cëeäóþùèe âèäû ïapaìeòpoâ ïepeäaþòcÿ ccûëêoé c äëèííûì (4-áaéòoâûì,
ceãìeíò è cìeùeíèe) aäpecoì.
ùB Ïàñêàëå, ADS ïepeìeííaÿ (aäpec ïepeäaeòcÿ çía÷eíèeì)
ùB Ïàñêàëå, ïapaìeòpû oïècaííûe êëþ÷eâûìè cëoâaìè VARS èëè CONSTS.
ùB Cè, ïapaìeòp, ïepeäaâaeìûé ïepeäa÷eé óêaçaòeëè far ía ïapaìeòp
(ccûëêa ïepeäaeòcÿ çía÷eíèeì). Çaìeòèì, ÷òo â LARGE ìoäeëè CÈ,
far óêaçaòeëè-ýòo òèï óêaçaòeëeé ïo óìoë÷aíèþ.
ùB Cè ìaccèâû, íe oïècaííûe êëþ÷eâûì cëoâoì near.
ùB Ôîðòðàíå, ëþáoé ïapaìeòp Ôîðòðàí-ïpoãpaììû, ça ècêëþ÷eíèeì ïa-
paìeòpoâ oïècaííûx aòpèáóòaìè NEAR èëè VALUE.
ùB Ôîðòðàíå, ïepeìeííaÿ ïepeäaâaeìaÿ äëèíûì aäpecoì â êa÷ecòâe
ïapaìeòpa ôóíêöèè LOC èëè LOCFAR; çía÷eíèeì ýòèx ôóíêöèé ÿâ-
ëÿeòcÿ INTEGER*4.
3.2.Ècïoëüçoâaíèe ïepeìeííoão ÷ècëa ïapaìeòpoâ.
Ecëè Bû coáèpaeòecü ècïoëüçoâaòü ïepeìeííoe ÷ècëo ïapaìeòpoâ:
ù ×ècëo ôaêòè÷ecêèx ïapaìeòpoâ äoëæío áûòü ìeíüøe èëè paâío ÷ècëó
ôopìaëüíûx ïapaìeòpoâ (ecëè âûçûâaeìaÿ ïpoöeäópa íaïècaía ía
Ôîðòðàíå èëè Ïàñêàëå).
Ha Ôîðòðàíå è Ïàñêàëå âoçíèêaþò cëoæíocòè ïpè paáoòe c ïapa-
ìeòpaìè, êoòopûe áûëè ôopìaëüío íe oïpeäeëeíû. Oäíaêo, Bû ìoæeòe
ècïoëüçoâaòü aòpèáóò VARYING äëÿ ïepeäa÷è òex ýëeìeíòoâ, êoòopûe
oïècaíû.
ù Bû äoëæíû ècïoëüçoâaòü C è VARYING aòpèáóòû â Baøeì óòâepæäeíèè
INTERFACE ía Ôîðòðàíå, èëè â oïècaíèè ïpoöeäópe ía Ïàñêàëå.
Aòpèáóò VARYING óêaçûâaþò êoìïèëÿòopó Ôîðòðàíà èëè Ïàñêàëÿ íe
ïpoâepÿòü áoëüøe èëè ìeíüøe ôaêòè÷ecêèx ïapaìeòpoâ, ÷eì ôopìaëüíûx
ïapaìeòpoâ. Oäíaêo, ôaêòè÷ecêèe ïapaìeòpû cooòâeòcòâóþùèe ôopìaëü-
íûì ïapaìeòpaì áóäóò ïpoâepÿòücÿ ía coâìecòèìocòü òèïoâ coãëacío
oáû÷íûì ïpaâèëaì ïpoâepêè oápaùeíèé ê ïpoöeäópe.
4.COÃËAØEHÈß OÁ ÈÄEHTÈÔÈKATOPAX.
Ecëè Bû áóäeòe cëeäoâaòü äâóì ïpaâèëaì ïpèâeäeííûì íèæe, êoì-
ïèëÿòopû MC-Ïàñêàëÿ, MC-Cè, MC-Ôîðòðàíà áóäóò êoppeêòío coãëaco-
âûâaòü èìeía.
ù Ecëè Bû ècïoëüçóeòe ïpoöeäópû ía Ôîðòðàíå, äëèía âcex èíäeíòèôè-
êaòopoâ (èìeí) äoëæía íe ïpeâûøaòü 6 ëèòep.
ù Èçáeãaéòe ïoëüçoâaòücÿ çaãëaâíûìè ëèòepaìè â èäeíòèôèêaòopax Cè.
Ecëè Bû äoëæíû oáÿçaòeëüío ècïoëüçoâaòü çaãëaâíûe ëèòepû,
óêaæèòe IGNORECASE è íe ècïoëüçóéòe äpóãèe èäeíòèôèêaòopû,
èìeþùèe òo æe íaïècaíèe, êaê çaãëaâíûé èëè cìeøaííûé Cè èäeí-
òèôèêaòop (Haïpèìep, ecëè èäeíòèôèêaòop Cè AnEXAMPLE, íe èc-
ïoëüçóéòe anexample, ANEXAMPLE èëè AnExAmPLE êaê èäeíòèôèêa-
òopû).
Ecëè Bû âce-òaêè íe ìoæeòe cëeäoâaòü ýòèì ïpaâèëaì, Bû ìoæeòe
â íeêoòopûx cëó÷aÿx coãëacoâûâaòü èìeía caìè. Ocòaâøaÿ ÷acòü äaí-
íoão paçäeëa ïocâÿùeía coãëaøeíèÿì oá èäeíòèôèêaòopaì ïo óìoë÷aíèþ
â êaæäoì ÿçûêe, è âëèÿíèþ cooòâeòcòâóþùèx aòpèáóòoâ è êëþ÷eâûx
cëoâ ía coãëaøeíèÿ ïo óìoë÷aíèþ.
Bo âcex òpex ÿçûêax, èìeía çaïècûâaþòcÿ paçëè÷ío â paáo÷eì
ôaéëe è â ècxoäíoì ôaéëe. Cóùecòâóeò oòëè÷èe â òpex ýëeìeíòax co-
ãëaøeíèÿ oá èäeíòèôèêaòopax.
PAÇMEP B Ôîðòðàíå è Ïàñêàëå, âce ïpoïècíûe ëèòepû, ïpeoápa-
çóþòcÿ â çaãëaâíûe ïepeä coçäaíèeì paáo÷eão ôaéëa. Ïo
óìoë÷aíèþ ýòoão íe ïpoècxoäèò c èäeíòèôèêaòopaìè Cè, ío
ìoæío çaäaòü, ÷òoáû âo âpeìÿ peäaêòèpoâaíèÿ câÿçeé ïpo-
ècxoäèëo èãíopèpoâaíèe paçìepa ëèòep.
ÄËÈHA B Ôîðòðàíå, ïo óìoë÷aíèþ, èìeía ìoãóò áûòü íe áoëüøe
øecòè ëèòep.
ÏOÄ×EPKÈBAHÈE B Cè, ïepeä îáùèìè èìeíaìè âceãäa còaâèòcÿ ïoä÷epê
ïepeä èõ âêëþ÷åíèåì â îáúåêòíûé ôaéë.
Ýòo paçëè÷èe â coãëaøeíèÿx oá èäeíòèôèêaòopax ïpèâoäèò ê òoìó,
÷òo íaïècaíèe îáùèõ cëoâ ía Ôîðòðàíå è Ïàñêàëå ïo óìoë÷aíèþ íe
cooòâeòcòâóeò íaïècaíèþ îáùèõ èìeí Cè ïo óìoë÷aíèþ. Cóùecòâóþò
aòpèáóòû è êëþ÷eâûe cëoâa, ïpè ïoìoùè êoòopûx ìoæío coãëacoâaòü
èìeía.
Ecëè Bû çaäaëè aòpèáóò C äëÿ èìeíè oáùeé èëè âíeøíeé ïpoöe-
äópû èëè oáúeêòa äaííûx â Ïàñêàëå èëè èìeíè ïpoöeäópû, èíòepôeéca,
èëè èìeííoâaííoão COMMON-áëoêa â Ôîðòðàíå, òo ýòo èìÿ ïpeoápaçóeòcÿ
â ïpoïècíoe c ïpèáaâëeíèeì ïoä÷epêa ê ía÷aëó èìeíè. Èäeíòèôèêaòopû
|