सॉलिडिटी - विशेष चर

विशेष चर विश्व स्तर पर उपलब्ध चर हैं और ब्लॉकचेन के बारे में जानकारी प्रदान करते हैं। निम्नलिखित विशेष चर की सूची है -

अनु क्रमांक। विशेष चर और विवरण
1

blockhash(uint blockNumber) returns (bytes32)

दिए गए ब्लॉक का हैश - वर्तमान, ब्लॉक को छोड़कर केवल 256 सबसे हाल के लिए काम करता है।

2

block.coinbase (address payable)

वर्तमान ब्लॉक की खान का पता।

3

block.difficulty (uint)

वर्तमान ब्लॉक कठिनाई।

4

block.gaslimit (uint)

करंट ब्लॉक गैसलिमिट।

5

block.number (uint)

वर्तमान ब्लॉक संख्या।

6

block.timestamp

यूनिक्स युग के बाद से सेकंड के रूप में वर्तमान ब्लॉक टाइमस्टैम्प।

7

gasleft() returns (uint256)

शेष गैस।

8

msg.data (bytes calldata)

पूर्ण कैलता।

9

msg.sender (address payable)

संदेश भेजने वाला (वर्तमान कॉल)।

10

msg.sig (bytes4)

कालदत्ता के पहले चार बाइट्स (यानी फ़ंक्शन पहचानकर्ता)

1 1

msg.value (uint)

संदेश के साथ भेजे गए वी की संख्या।

12

now (uint)

वर्तमान ब्लॉक टाइमस्टैम्प (ब्लॉक के लिए उपनाम)।

13

tx.gasprice (uint)

लेन-देन की गैस की कीमत।

14

tx.origin (address payable)

लेन-देन का प्रेषक (पूर्ण कॉल श्रृंखला)।

उदाहरण

सॉलिडिटी में प्रेषक का पता प्राप्त करने के लिए एक विशेष चर मैसेंजर का उपयोग देखने के लिए निम्न कोड का प्रयास करें।

pragma solidity ^0.5.0;

contract LedgerBalance {
   mapping(address => uint) public balances;

   function updateBalance(uint newBalance) public {
      balances[msg.sender] = newBalance;
   }
}
contract Updater {
   function updateBalance() public returns (uint) {
      LedgerBalance ledgerBalance = new LedgerBalance();
      ledgerBalance.updateBalance(10);
      return ledgerBalance.balances(address(this));
   }
}

सॉलिडिटी फर्स्ट एप्लीकेशन चैप्टर में दिए गए चरणों का उपयोग करके उपरोक्त प्रोग्राम को चलाएं ।

पहला क्लिक करें updateBalance मान को 10 के रूप में सेट करने के लिए बटन तब लॉग में देखें जो डिकोडेड आउटपुट को दिखाएगा -

उत्पादन

{
   "0": "uint256: 10"
}