diff --git a/native/jni/src/suggest/policyimpl/dictionary/structure/backward/v402/ver4_patricia_trie_policy.cpp b/native/jni/src/suggest/policyimpl/dictionary/structure/backward/v402/ver4_patricia_trie_policy.cpp
index e3f14e687..9c6452e40 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/structure/backward/v402/ver4_patricia_trie_policy.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/structure/backward/v402/ver4_patricia_trie_policy.cpp
@@ -210,7 +210,7 @@ bool Ver4PatriciaTriePolicy::addUnigramEntry(const int *const word, const int le
     }
     for (const auto &shortcut : unigramProperty->getShortcuts()) {
         if (shortcut.getTargetCodePoints()->size() > MAX_WORD_LENGTH) {
-            AKLOGE("One of shortcut targets is too long to insert to the dictionary, length: %d",
+            AKLOGE("One of shortcut targets is too long to insert to the dictionary, length: %zd",
                     shortcut.getTargetCodePoints()->size());
             return false;
         }
@@ -245,7 +245,7 @@ bool Ver4PatriciaTriePolicy::addUnigramEntry(const int *const word, const int le
                 if (!mUpdatingHelper.addShortcutTarget(wordPos,
                         shortcut.getTargetCodePoints()->data(),
                         shortcut.getTargetCodePoints()->size(), shortcut.getProbability())) {
-                    AKLOGE("Cannot add new shortcut target. PtNodePos: %d, length: %d, "
+                    AKLOGE("Cannot add new shortcut target. PtNodePos: %d, length: %zd, "
                             "probability: %d", wordPos, shortcut.getTargetCodePoints()->size(),
                             shortcut.getProbability());
                     return false;
@@ -289,7 +289,7 @@ bool Ver4PatriciaTriePolicy::addNgramEntry(const PrevWordsInfo *const prevWordsI
     }
     if (bigramProperty->getTargetCodePoints()->size() > MAX_WORD_LENGTH) {
         AKLOGE("The word is too long to insert the ngram to the dictionary. "
-                "length: %d", bigramProperty->getTargetCodePoints()->size());
+                "length: %zd", bigramProperty->getTargetCodePoints()->size());
         return false;
     }
     int prevWordsPtNodePos[MAX_PREV_WORD_COUNT_FOR_N_GRAM];
diff --git a/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_policy.cpp b/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_policy.cpp
index 723808399..d8f4595ff 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_policy.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_policy.cpp
@@ -200,7 +200,7 @@ bool Ver4PatriciaTriePolicy::addUnigramEntry(const int *const word, const int le
     }
     for (const auto &shortcut : unigramProperty->getShortcuts()) {
         if (shortcut.getTargetCodePoints()->size() > MAX_WORD_LENGTH) {
-            AKLOGE("One of shortcut targets is too long to insert to the dictionary, length: %d",
+            AKLOGE("One of shortcut targets is too long to insert to the dictionary, length: %zd",
                     shortcut.getTargetCodePoints()->size());
             return false;
         }
@@ -235,7 +235,7 @@ bool Ver4PatriciaTriePolicy::addUnigramEntry(const int *const word, const int le
                 if (!mUpdatingHelper.addShortcutTarget(wordPos,
                         shortcut.getTargetCodePoints()->data(),
                         shortcut.getTargetCodePoints()->size(), shortcut.getProbability())) {
-                    AKLOGE("Cannot add new shortcut target. PtNodePos: %d, length: %d, "
+                    AKLOGE("Cannot add new shortcut target. PtNodePos: %d, length: %zd, "
                             "probability: %d", wordPos, shortcut.getTargetCodePoints()->size(),
                             shortcut.getProbability());
                     return false;
@@ -286,7 +286,7 @@ bool Ver4PatriciaTriePolicy::addNgramEntry(const PrevWordsInfo *const prevWordsI
     }
     if (bigramProperty->getTargetCodePoints()->size() > MAX_WORD_LENGTH) {
         AKLOGE("The word is too long to insert the ngram to the dictionary. "
-                "length: %d", bigramProperty->getTargetCodePoints()->size());
+                "length: %zd", bigramProperty->getTargetCodePoints()->size());
         return false;
     }
     int prevWordsPtNodePos[MAX_PREV_WORD_COUNT_FOR_N_GRAM];