1
我寫了函數將十萬個十六進制字符串轉換爲值,但需要10秒鐘才能在整個數組上執行。 Matlab有一個函數來做到這一點,所以它更快,也就是說:數組少於1秒?matlab:將十六進制值的字符串轉換爲十進制值?
function x = hexstring2dec(s)
[m n] = size(s);
x = zeros(1, m);
for i = 1 : m
for j = n : -1 : 1
x(i) = x(i) + hexchar2dec(s(i, j)) * 16^(n - j);
end
end
function x = hexchar2dec(c)
if c >= 48 && c <= 57
x = c - 48;
elseif c >= 65 && c <= 70
x = c - 55;
elseif c >= 97 && c <= 102
x = c - 87;
end