0

我的jni/Android.mk文件中有这个:

LOCAL_CFLAGS := -LANG=en

但是当我运行程序时,LANG 不存在!有任何想法吗?

4

1 回答 1

2

请改用 -D 选项:

LOCAL_CFLAGS := -D LANG=en

它相当于 C#define。然后,您将 LANG 用作带有 value 的常量en。请注意,它不是字符串“en”,而是不带引号的标识符。所以下面的用法很好:

int en = 1, de = 2, es = 3;

int CurrentLang = LANG; //Translates to CurrentLang = en;

或者像这样:

#if LANG==en
//English localization stuff...
#endif

虽然以下不是:

char * CurrentLang = LANG; //Error: en is an unknown identifier. It's not a string.
于 2012-09-11T13:22:35.143 回答