--- title: cdata - C मान और FFI summary: पॉइंटर, स्ट्रक्चर और C संख्याओं के लिए LuaJIT मान। ffi.string, C स्ट्रिंग को Lua स्ट्रिंग में कॉपी करता है; ffi.cast प्रकार का दृश्य बदलता है, लेकिन पते की वैधता साबित नहीं करता। मेमोरी का जीवनकाल अलग से जाँचें। section: reference kind: guide status: reference updated: 2026-10-26 tags: ["API","X4"] sources: ["https://wiki.egosoft.com/X4%20Foundations%20Wiki/Modding%20Support/","https://www.lua.org/manual/5.1/manual.html","https://luajit.org/ext_ffi_api.html"] --- ## अर्थ पॉइंटर, स्ट्रक्चर और C संख्याओं के लिए LuaJIT मान। ffi.string, C स्ट्रिंग को Lua स्ट्रिंग में कॉपी करता है; ffi.cast प्रकार का दृश्य बदलता है, लेकिन पते की वैधता साबित नहीं करता। मेमोरी का जीवनकाल अलग से जाँचें। ## उदाहरण ```lua local ffi = require("ffi") local value = ffi.new("uint64_t", 42) local kind = type(value) -- cdata local bytes = ffi.sizeof(value) ``` **क्या होता है:** मान uint64_t है जिसमें 42 है; प्रकार = "cdata"; बाइट्स = 8. यह टुकड़ा लॉग संदेश नहीं प्रिंट करता है या नहीं लिखता है। दिखाए गए मान उदाहरण के अपेक्षित परिणाम हैं। ## मेथड और संबंधित कॉल | फ़ंक्शन | लौटाता है | उद्देश्य | | --- | --- | --- | | [ffi.cast](wiki:api-standard-ffi-cast-ae33ac09) | [`cdata`](wiki:type-cdata) | सी-प्रकार का कास्ट द्वारा स्कालर cdata बनाता है। कास्टिंग मेमोरी पते को मान्य नहीं करता है। | | [ffi.cdef](wiki:api-standard-ffi-cdef-a564999c) | [`none`](wiki:type-results) | FFI के लिए C प्रकार और हस्ताक्षर घोषित करता है; यह कोई पुस्तकालय लोड नहीं करता है या कोई फ़ंक्शन लागू नहीं करता है। | | [ffi.copy](wiki:api-standard-ffi-copy-aa0e2705) | [`none`](wiki:type-results) | बफर में बाइट्स की प्रतिलिपि। उत्सर्जन लंबाई के लिए Lua स्ट्रिंग की आवश्यकता होती है और इसके शून्य समाप्तकर्ता को भी कॉपी किया जाता है। | | [ffi.new](wiki:api-standard-ffi-new-86273c2d) | [`cdata`](wiki:type-cdata) | cdata को आवंटित और आरंभ करता है। चर-लंबाई वाले सरणी या स्ट्रक्ट के लिए आकार तर्क की आवश्यकता होती है। | | [ffi.sizeof](wiki:api-standard-ffi-sizeof-18d93d2f) | [`number`](wiki:type-number) \| [`nil`](wiki:type-nil) | C प्रकार या cdata के बाइट आकार को लौटाता है; अज्ञात आकार शून्य उत्पन्न कर सकता है। | | [ffi.string](wiki:api-standard-ffi-string-4edf893f) | [`string`](wiki:type-string) | C पॉइंटर से डेटा को Lua स्ट्रिंग में कॉपी करता है; बिना लंबाई के यह शून्य टर्मिनेटर को पढ़ता है। |