在为嵌入式系统开发软件时,我realloc()
多次使用了函数.现在我被告知我"不应该realloc()
在嵌入式中使用"而没有任何解释.
realloc()
嵌入式系统是危险的,为什么?
看到我想要cp
在机器人上的coomand,但它不会兴奋,所以我认为交叉编译源cp
.
Linux有cp命令然后从哪里可以找到代码cp
?
我正在研究一个32位系统.当我尝试在单个printf中打印多个64位值时,它无法再打印(即第2,第3 ......)个变量值.
例:
uint64_t a = 0x12345678;
uint64_t b = 0x87654321;
uint64_t c = 0x11111111;
printf("a is %llx & b is %llx & c is %llx",a,b,c);
Run Code Online (Sandbox Code Playgroud)
为什么这个printf不能打印所有值?
我正在修改我的问题
printf("a is %x & b is %llx & c is %llx",a,b,c);
Run Code Online (Sandbox Code Playgroud)
通过这样做的结果是:a是12345678&b是8765432100000000&c是1111111100000000
如果我没有正确打印一个值,那么为什么其他的价值才会变化?
有时我们在c编程中使用这种类型的代码.
char *p = "Sam";
Run Code Online (Sandbox Code Playgroud)
这里,常量字符串"Sam"的地址将存储在char指针p中.现在
我想问一下Sam将要存放在哪里?
我正在阅读android源代码,因为我没有得到 OPEN GL ES
库做什么以及做 EGL library
什么.
这两个图书馆之间有什么关系吗?
我查看了http://www.khronos.org/opengles/documentation/opengles1_0/html/ 但仍未获得.
我把我的应用程序文件夹放进去
packages/apps // inside AOSP source code
Run Code Online (Sandbox Code Playgroud)
现在我的应用程序跟Android.mk
在同一个文件夹中:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(call all-java-files-under, src)
LOCAL_PACKAGE_NAME := package_name
LOCAL_CERTIFICATE := platform
include $(BUILD_PACKAGE)
# Use the folloing include to make our test app
include $(call all-makefiles-under,$(LOCAL_PATH))
Run Code Online (Sandbox Code Playgroud)
现在,当我构建我的AOSP项目时,它还会编译我的应用程序并将APK文件放入其中:
出/目标/产品/ $ MY_PLATFORM /系统/应用程序
但是我想把它放进去:
出/目标/产品/ $ MY_PLATFORM/data/app中
我该怎么做呢?什么使文件更改?
我在android应用程序的assets文件夹中保存了一些文件.
现在我编译该应用程序并获取apk.[当我提取那个apk我的文件在资产文件夹中时]
现在我在移动设备中安装apk
并且在该应用程序中有一些代码在c编程与JNI接口.
现在我fopen()
对该文件的c编程调用失败了.
fopen("myfile","r");
Run Code Online (Sandbox Code Playgroud)
我知道在安装apk安卓复制资产文件时 /data/data/com.packagename/something
所以,有人知道这条道路,所以我可以放弃它 fopen()
或者是否有任何其他方法在C编程中打开该文件.
如果我将这些文件保存在sdcard文件夹中并像访问那样fopen("/sdcard/myfile","r");
工作文件.但我想只将这些文件保存在assets文件夹中
在我写的一个函数中:
char *ab;
ab=malloc(10);
Run Code Online (Sandbox Code Playgroud)
然后在另一个函数中我想知道ab
指针指向的内存大小.有什么方法我可以知道ab
指向10个内存的字符?