diff --git a/include/syscap_define.h b/include/syscap_define.h index 2c5f482..fa4475d 100644 --- a/include/syscap_define.h +++ b/include/syscap_define.h @@ -19,7 +19,11 @@ #include #define SINGLE_SYSCAP_LEN (256 + 17) - +#ifdef __cplusplus +#if __cplusplus +extern "C" { +#endif /* __cplusplus */ +#endif /* __cplusplus */ typedef struct SystemCapabilityWithNum { char str[SINGLE_SYSCAP_LEN]; uint16_t num; @@ -401,4 +405,9 @@ const static SyscapWithNum g_arraySyscap[] = { {"SystemCapability.Utils.Lang", UTILS_LANG}, }; +#ifdef __cplusplus +#if __cplusplus +} +#endif /* __cplusplus */ +#endif /* __cplusplus */ #endif // _SYSCAP_DEFINE_H diff --git a/interfaces/inner_api/syscap_interface.c b/interfaces/inner_api/syscap_interface.c index b55f356..6010d1f 100644 --- a/interfaces/inner_api/syscap_interface.c +++ b/interfaces/inner_api/syscap_interface.c @@ -183,7 +183,7 @@ bool EncodePrivateSyscap(char **output, int *outputLen) } FreeContextBuffer(contextBuffer); - *outputLen = strlen(outputStr); + *outputLen = (int)strlen(outputStr); *output = outputStr; return true; }