编译器GCC/CLANG 使用摘记
来源:互联网 发布:如何导入sql文件 编辑:程序博客网 时间:2024/06/06 08:45
[问题]
[解答]
[问题] static和extern的混合用法测试
[解答] 测试结果表明,C代码文件中用static声明的变量,不可以在别的C代码文件中使用extern来引用的。
声明为auto类型(默认auto这个关键词是省略的)的变量,看在别的C代码文件中通过extern来引用的。
[问题] 可以这样获取字符串中的某个字符
[解答] 字符串实际上是匿名字符数组
#include <stdio.h>
int main(int argc, char *argv[])
{
printf("%c\n", "Hello, world\n"[11]); /* 可以这样获取字符串中的某个字符 */
return 0;
}
[问题] 不用加法运算而用实现 变量加 1 功能 C 代码
[解答] 将数转换成数组指针类型的指针,加上一个偏移量
#include <stdio.h>
int _inc1(void *i)
{
char (*p)[3] = (char (*)[3])i;
printf("%d\n",(int)&((*p)[0]));
printf("%d\n",(int)&((*p)[2]));
return (int)&((*p)[1]);
}
int main()
{
printf("%d\n", _inc1((void*)400));
return 0;
}
[问题]
clang++: error: unable to execute command: Killedclang++: error: linker command failed due to signal (use -v to see invocation)
[4]: Linking Debug+Asserts executable clang
clang++: error: unable to execute command: Killed
clang++: error: linker command failed due to signal (use -v to see invocation)
[解答] memory is not enough to link 加大物理机器的内存,或者加大swap分区
Ref: https://stackoverflow.com/questions/5682854/why-is-the-linker-terminating-on-me-when-i-build-clang/5682962#5682962
[问题] const char* const*p;
[解答] p is a const pointer to a pointer to const char从右到左读这个表达式
[问题] configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+.
[解答] 下载地址:
ftp://gcc.gnu.org/pub/gcc/infrastructure/
ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-4.3.2.tar.bz2
ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-2.4.2.tar.bz2
ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-0.8.1.tar.gz
[问题] 三元运算符"?:"的指令效率是否比if else高呢?
[解答] 是的, 三元运算符作为一个可优化的整体, 优化空间高于if else的两个运算符的组合优化.
test.c : 1 > 2 ? 0: 2; 通过 cc -o test.c, 然后objdump test.o可以比较指令的多寡.
- 编译器GCC/CLANG 使用摘记
- 编译器:GCC / Clang
- FreeBSD 10 将使用 Clang 编译器替换 GCC
- FreeBSD 10 将使用 Clang 编译器替换 GCC
- GCC,LLVM,Clang编译器对比
- gcc/g++/clang/cl编译器
- 编译器(GNU & GCC & clang & llvm)
- GCC,LLVM,Clang编译器对比
- 编译器(GNU & GCC & clang & llvm)
- 编译器(GNU & GCC & clang & llvm)
- GCC,LLVM,Clang编译器对比
- GCC,LLVM,Clang编译器对比
- 编译器(GNU & GCC & clang & llvm)
- 编译器三:GCC,LLVM,Clang编译器对比
- GCC 使用摘记
- Clang 与 GCC 编译器的简单比较
- premake 使用clang替换gcc
- clang编译器
- 万圣节派对(南阳oj733)
- SSRS 2008 分类汇总
- 将博客搬至CSDN
- 两亲性分子(Amphiphilic Carbon Molecules,Uva 1606)
- nodejs 格式化输出字符串
- 编译器GCC/CLANG 使用摘记
- 管理表
- SSRS 2008 实用小技巧
- css3-定位和浮动
- 左右声道混合方案
- 学习笔记(六):C++串口连接
- SEO外包需注意的几个要点
- webrtc rtcp mux及其对 传统voip的影响
- Android开发:LayoutParams的用法