»
(008)CubeIDE实现USB外设*
(018)C99 的指针*
(019)C99 只有值赋值,没有move*
(022)POSIX线程库pthread的同步锁*
(023)POSIX线程库pthread的多线程*
(027)C99标准库中的计时与等待 *
(028)C语言中的高精度计算库GMP *
(029)C语言中的Web服务*
(030)C语言中的字符转码ICU*
(031)从几个方面显然C语言比C++效率高*
(056)编译器优化出错点
1、等待变量及延时等待的死循环空操作while(!done);for(int i=0;i<15*8000;i++){}
(__asm volatile("nop"))
2、结果未被使用的基本运算
(volatile int result = 0;)
3、没有明显副作用的函数及函数调用
(__attribute__((used)))
4、编译器能推断出的恒定条件分支
(volatile)
5、浮点运算优化导致精度问题
(no-fast-math)
6、变量被缓存在寄存器中
(volatile)
7、不同类型的指针不会指向同一内存
(union)
-fno-fast-math
-fno-strict-aliasing
__attribute__((noinline))