From 5e82edeaf12143d0fa0cff13aef805d13065409f Mon Sep 17 00:00:00 2001 From: wangmengc Date: Thu, 23 May 2024 14:02:44 +0800 Subject: [PATCH] add exp3 function --- utshell-0.5/r_expr/src/lib.rs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/utshell-0.5/r_expr/src/lib.rs b/utshell-0.5/r_expr/src/lib.rs index 8aa4160a..1e6960b9 100644 --- a/utshell-0.5/r_expr/src/lib.rs +++ b/utshell-0.5/r_expr/src/lib.rs @@ -594,3 +594,25 @@ unsafe extern "C" fn expmuldiv() -> intmax_t { return val1; } +#[no_mangle] +unsafe extern "C" fn exp3() -> intmax_t { + let mut val1: intmax_t = 0; + let mut val2: intmax_t = 0; + val1 = expmuldiv(); + while curtok == '+' as i32 || curtok == '-' as i32 { + let mut op: libc::c_int = curtok; + readtok(); + val2 = expmuldiv(); + if op == '+' as i32 { + val1 += val2; + } else if op == '-' as i32 { + val1 -= val2; + } + lasttok = NUM as libc::c_int; + } + return val1; +} + + + + -- Gitee