GCC में C/C++ कोड से असेंबली लिस्टिंग कैसे प्राप्त करें?
सभी को नमस्ते। मैं C++ सीख रहा हूं और यह समझने की कोशिश कर रहा हूं कि कंपाइलर मेरे कोड को machine instructions में कैसे बदलता है। मैं देखना चाहता हूं कि, उदाहरण के लिए, एक साधारण loop या function call क्या बनता है। मैं Linux पर GCC (g++) का उपयोग कर रहा हूं।\n\nमैंने `-S` flag आज़माया, यह एक `.s` फ़ाइल बनाता है, लेकिन उसमें बहुत सारा कचरा है — labels, `.cfi_*` directives, `.LC0` जैसे समझ से बाहर के नाम। यहां तक कि एक साधारण `hello.cpp`:\n\n```cpp\n#include \nint main() {\n std::cout << "Hello";\n return 0;\n}\n```\n\n`g++ -S hello.cpp` के बाद `hello.s` में मैं न केवल कोड देखता हूं, बल्कि बहुत सारा अतिरिक्त सामान भी देखता हूं। मैं एक साफ असेंबली लिस्टिंग कैसे प्राप्त करूं, जहां केवल मेरे function का कोड दिखे, बिना इस सारी service information के?\n\nमुझे यह भी जानना है: क्या टर्मिनल में सीधे असेंबली देखना संभव है, बिना फ़ाइल बनाए? और मिश्रित source code के साथ लिस्टिंग कैसे बनाएं?