2026 AI视觉与物联网开发板选购指南:从MCU到Jetson的档位解析
2026/9/6 23:59:27
string s = "1010"; int x = stoi(s, nullptr, 2); // 就是把字符串 "1010" 当成二进制数,转换成 C++ 的十进制整数。 第三个参数 2 表示:按照 2 进制来解释 s 1×2³ + 0×2² + 1×2¹ + 0×2⁰ = 8 + 0 + 2 + 0 = 10 stoi("1010", nullptr, 2); // 1010₂ → 10 stoi("17", nullptr, 8); // 17₈ → 15 stoi("1A", nullptr, 16); // 1A₁₆ → 26我们平时用的是十进制:
345 = 3×10² + 4×10¹ + 5×10⁰
七进制则是:
345(7) = 3×7² + 4×7¹ + 5×7⁰
怎么把十进制变七进制?不断除以7,记录余数,,
举例:100 转七进制
100÷7=14 余 2 最低位是2
14÷7=2 余 0 最低位是2
2÷7=0 余 2 最低位是2 202(七进制)就代表100
class Solution { public: std::string convertToBase7(int num) { // 特殊情况 if (num == 0) return "0"; bool negative = num < 0; num = abs(num); std::string res = ""; while (num > 0) { // res += char(num % 7 + '0'); res += static_cast<char>(num % 7 + '0'); num /= 7; } // res = static_cast<char>(remainder);这只是把整数值强制解释成对应编码的字符,不是把数字变成 '0'~'9' 字符。 // 反转字符串 reverse(res.begin(), res.end()); if (negative) { res = "-" + res; } return res; } };