diff --git a/src/string/src/lib.rs b/src/string/src/lib.rs
index ad98548e01324425e8916dcd6643a698fef0228d..47ecec51672f621d8c8df2d733b9be9b3ded4899 100644
--- a/src/string/src/lib.rs
+++ b/src/string/src/lib.rs
@@ -30,7 +30,7 @@ pub unsafe extern "C" fn memccpy(
     let src = src as *mut u8;
     let dist = ((to as usize) - (src as usize)) / mem::size_of::<u8>();
     if memcpy(dest, src, dist) as usize > 0 {
-        return dest.offset(dist as isize) as *mut c_void;
+        return dest.offset(dist as isize + 1) as *mut c_void;
     }
     0usize as *mut c_void
 }