Íó íå ãîìîñåêñóàëèçì, à? Ïðî öåëî÷èñëåííûå òèïû Ôîðòðàíà
|
|
×åòâåðã, 23 Àâãóñòà 2007 ã. 09:21
+ â öèòàòíèê
Âñåãäà ïîëüçîâàëñÿ êîììåð÷åñêèìè êîìïèëÿòîðàìè Ôîðòðàíà 90 - ôèðì DEC (îí æå Compaq, íûíå HP) è Lahey (Fujitsu-Lahey). Â÷åðà ðåøèë îòêîìïèëèðîâàòü ïðîãðàììêó g95 èëè gcc - îêàçûâàåòñÿ, òàì ïðèíÿòû "ñèììåòðè÷íûå" öåëî÷èñëåííûå òèïû, ò.å. îäíîáàéòîâîå öåëîå ðàçðåøåíî â äèàïàçîíå îò -127 äî 127, à íå îò -128! Êàê æèòü äàëüøå, íå î÷åíü ÿñíî. Âîçìîæíî, ó gcc åù¸ åñòü îïöèÿ, ïîçâîëÿþùàÿ çàäàòü äèàïàçîí äëÿ öåëî÷èñëåííîé ïåðåìåííîé (ñåãîäíÿ èññëåäóþ), íî ó g95 ýòîãî íåò ïðàêòè÷åñêè íàâåðíÿêà (èññëåäîâàë â÷åðà). Ýòî ìàðàçì è äåáèëèçì æ¸ñòêèé. Èëè ÿ ÷åãî-òî íå ïîíèìàþ. Äîïóñòèì, ïðè ñ÷èòûâàíèè áèòìàïà ìíå âñòðå÷àåòñÿ ÷èñëî -128 (íà ñàìîì äåëå ýòî ñèøíûé unsigned char, ðàâíûé 128, à â Ôîðòðàíå íåò áåççíàêîâûõ òèïîâ, íî íå ñóòü), ïðîãðàììà íîðìàëüíî îòðàáàòûâàåò. Íî ïðè ïîïûòêå ïðèñâîåíèÿ ïåðåìåííîé çíà÷åíèÿ -128 ÷òåíèåì èç ñòàíäàðòíîãî ïîòîêà ââîäà âîçíèêàåò öåëî÷èñëåííîå ïåðåïîëíåíèå! Áððð.
Ìåòêè:
áððð
-
Çàïèñü ïîíðàâèëàñü
-
0
Ïðîöèòèðîâàëè
-
0
Ñîõðàíèëè
-