revord.m

来自「多元统计程序包」· M 代码 · 共 31 行

M
31
字号
subroutine revord(input_buf, strlen, output_buf)
character input_buf(*), output_buf(*)
integer i, strlen
do 10  i=1, strlen
output_buf(i) = input_buf(strlen-i+1)
10 continue
return
end

subroutine mexFunction(nlhs, plhs, nrhs, prhs)
integer nlhs, nrhs
integer plhs(*), prhs(*)
integer mxCreateString, mxGetString
integer mxGetM, mxGetN, mxIsString
integer status, strlen
character*100 input_buf, output_buf
if (nrhs.ne.1) then
    call mexErrMsgTxt('One input required!')
elseif (hlhs.gt.1)then
    call mexErrMsgTxt('Too many output arguments!')
elseif (mxIsString(prhs(1)).ne.1)the
    call mexErrmsgTxt('Input must be a string')
elseif (mxGetM(prhs(1)).ne.1)then
    call mexErrMSGTxt('Input must be arow vector')
    endif
    strlen = mxGetM(prhs(1)*mxGetN(prhs(1))
    statud = mxGetString(prhs(1),input_buf,100)
    if (status.ne.0)then
        call mexErrMsgTxt('String length must be less than 100')
    output_buf = ''
    endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?