c++/c chips


scope resolution region operator:" ::"

http://msdn.microsoft.com/en-us/library/56e442dc(v=VS.71).aspx

Format Specification Fields: printf and wprintf Functions

 

想要printf unsigned long long 用%llx; e.g.:printf("id is %llx /n", xxid);

 

 


unicode/mbcs/ansi

程序里还是用tchar比较好,否则转换起来还是挺麻烦的。

其实主要是unicode和非unicode之间的转换,mbcs是单位为char,程序解析的时候有可能一次解析变长个char来组成中文一类的字符。

http://msdn.microsoft.com/en-us/library/c426s321(VS.71).aspx

 

 


 

static_cast

http://msdn.microsoft.com/en-us/library/c36yw7x9(v=vs.80).aspx

compile time的类型转换,一种是像int转float这种,没什么好说的。

pointer转换到是值得注意。

比如:

 

 

在做B* b = new B; AA* a = static_cast<AA*>(b);这样的操作的时候,a的地址会是根据内存的一个偏移而不是和b一样,或者dynamic_cast类型的NULL;


http://msdn.microsoft.com/en-us/library/5tkz6s71.aspx

__declspec( selectany ) declarator
用这个可以直接header里面define global/static variable, 然后在link的时候只选择一个,就不会出现multiple definition了。

[129/615] AR libs/libbegetutil_static.a FAILED: libs/libbegetutil_static.a ccache riscv32-linux-musl-ar cr libs/libbegetutil_static.a @"libs/libbegetutil_static.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [130/615] gcc CXX obj/base/hiviewdfx/hilog_lite/frameworks/featured/libhilog_static.hilog.o FAILED: obj/base/hiviewdfx/hilog_lite/frameworks/featured/libhilog_static.hilog.o ccache riscv32-linux-musl-g++ -D_XOPEN_SOURCE=700 -DOHOS_DEBUG -D__LITEOS__ -D__LITEOS_M__ -I../../../commonlibrary/utils_lite/include -I../../../device/soc/hisilicon/ws63v100/sdk/include -I../../../device/soc/hisilicon/ws63v100/sdk/include/driver -I../../../device/soc/hisilicon/ws63v100/sdk/include/middleware/utils -I../../../device/soc/hisilicon/ws63v100/sdk/middleware/chips/ws63/update/include -I../../../device/soc/hisilicon/ws63v100/sdk/middleware/chips/ws63/partition/include -I../../../device/soc/hisilicon/ws63v100/sdk/middleware/chips/ws63/littlefs -I../../../device/soc/hisilicon/ws63v100/sdk/middleware/utils/update/inner_include -I../../../device/soc/hisilicon/ws63v100/sdk/middleware/utils/common_headers -I../../../device/soc/hisilicon/ws63v100/sdk/drivers/chips/ws63/include -I../../../device/soc/hisilicon/ws63v100/sdk/drivers/boards/ws63/evb/memory_config/include/product -I../../../device/soc/hisilicon/ws63v100/sdk/open_source/lwip/lwip_v2.1.3/src/include -I../../../device/soc/hisilicon/ws63v100/sdk/open_source/lwip/lwip_adapter/liteos_207/src/include -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/kernel/include -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/compat/linux/include -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/platform/libsec/include -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/osal/include/lock -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/open_source/musl/include -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/osal/include/schedule -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/open_source/musl/arch/generic -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/open_source/musl/arch/riscv32 -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/lib/liteos_libc/include -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/drivers/interrupt/include -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/drivers/timer/include -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/targets/ws63/include -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/arch/riscv/include -I../../../kernel/liteos_m/utils -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/compat/cmsis -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/kernel/base/include -I../../../device/soc/hisilicon/ws63v100/sdk/kernel/liteos/liteos_v208.5.0/Huawei_LiteOS/open_source/CMSIS/CMSIS/RTOS2/Include -I../../../base/hiviewdfx/hilog_lite/interfaces/native/innerkits/hilog -I../../../base/hiviewdfx/hilog_lite/interfaces/native/innerkits -I../../../third_party/bounds_checking_function/include -Os -mabi=ilp32f -falign-functions=2 -msave-restore -fno-optimize-strlen -freorder-blocks-algorithm=simple -fno-schedule-insns -fno-inline-small-functions -fno-inline-functions-called-once -mtune=size -mno-small-data-limit=0 -fno-aggressive-loop-optimizations -std=c99 -Wpointer-arith -Wstrict-prototypes -ffunction-sections -fdata-sections -fno-exceptions -fshort-enums -Wextra -Wundef -U PRODUCT_CFG_BUILD_TIME -D__LITEOS__ -DCMSIS_OS_VER=2 -DLOSCFG_COMPAT_CMSIS_VER_2 -DCHIP_WS63=1 -DLOSCFG_XTS_SUPPORT -DLWIP_CONFIG_FILE=\"lwip/lwipopts_default.h\" -march=rv32imfc -fno-common -fno-builtin -fno-strict-aliasing -Wall -fstack-protector-all -std=c++11 -mabi=ilp32f -falign-functions=2 -msave-restore -fno-optimize-strlen -freorder-blocks-algorithm=simple -fno-schedule-insns -fno-inline-small-functions -fno-inline-functions-called-once -mtune=size -mno-small-data-limit=0 -fno-aggressive-loop-optimizations -std=c99 -Wpointer-arith -Wstrict-prototypes -ffunction-sections -fdata-sections -fno-exceptions -fshort-enums -Wextra -Wundef -U PRODUCT_CFG_BUILD_TIME -D__LITEOS__ -DCMSIS_OS_VER=2 -DLOSCFG_COMPAT_CMSIS_VER_2 -DCHIP_WS63=1 -DLOSCFG_XTS_SUPPORT -DLWIP_CONFIG_FILE=\"lwip/lwipopts_default.h\" -c ../../../base/hiviewdfx/hilog_lite/frameworks/featured/hilog.cpp -o obj/base/hiviewdfx/hilog_lite/frameworks/featured/libhilog_static.hilog.o ccache: error: Could not find compiler "riscv32-linux-musl-g++" in PATH [131/615] AR libs/libblackbox_lite.a FAILED: libs/libblackbox_lite.a ccache riscv32-linux-musl-ar cr libs/libblackbox_lite.a @"libs/libblackbox_lite.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [132/615] AR libs/libinit_log.a FAILED: libs/libinit_log.a ccache riscv32-linux-musl-ar cr libs/libinit_log.a @"libs/libinit_log.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [133/615] AR libs/libexport_headers_lib.a FAILED: libs/libexport_headers_lib.a ccache riscv32-linux-musl-ar cr libs/libexport_headers_lib.a @"libs/libexport_headers_lib.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [134/615] AR libs/libhidumper_mini.a FAILED: libs/libhidumper_mini.a ccache riscv32-linux-musl-ar cr libs/libhidumper_mini.a @"libs/libhidumper_mini.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [135/615] AR libs/libinithook.a FAILED: libs/libinithook.a ccache riscv32-linux-musl-ar cr libs/libinithook.a @"libs/libinithook.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [136/615] AR libs/libpwm_servo_demo.a FAILED: libs/libpwm_servo_demo.a ccache riscv32-linux-musl-ar cr libs/libpwm_servo_demo.a @"libs/libpwm_servo_demo.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [137/615] AR libs/libhiview_lite_static.a FAILED: libs/libhiview_lite_static.a ccache riscv32-linux-musl-ar cr libs/libhiview_lite_static.a @"libs/libhiview_lite_static.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [139/615] AR libs/libparameterbase.a FAILED: libs/libparameterbase.a ccache riscv32-linux-musl-ar cr libs/libparameterbase.a @"libs/libparameterbase.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [140/615] AR libs/libinit_utils.a FAILED: libs/libinit_utils.a ccache riscv32-linux-musl-ar cr libs/libinit_utils.a @"libs/libinit_utils.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [141/615] AR libs/libparameterbase_noflto.a FAILED: libs/libparameterbase_noflto.a ccache riscv32-linux-musl-ar cr libs/libparameterbase_noflto.a @"libs/libparameterbase_noflto.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [143/615] AR libs/libfsmanager_static.a FAILED: libs/libfsmanager_static.a ccache riscv32-linux-musl-ar cr libs/libfsmanager_static.a @"libs/libfsmanager_static.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [144/615] AR libs/libhal_sys_param.a FAILED: libs/libhal_sys_param.a ccache riscv32-linux-musl-ar cr libs/libhal_sys_param.a @"libs/libhal_sys_param.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH [145/615] AR libs/libfsmanager_static_real.a FAILED: libs/libfsmanager_static_real.a ccache riscv32-linux-musl-ar cr libs/libfsmanager_static_real.a @"libs/libfsmanager_static_real.a.rsp" ccache: error: Could not find compiler "riscv32-linux-musl-ar" in PATH
最新发布
11-03
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值