gnuc与ansic
GNU c与标准c的区别
1) 零长度数组
struct var_data
{
int len;
char data[0];
}test;
int a;
test.data -->a
2)case语句
case 1:
case 2:
case 3:
xxx;
break;
GNU C
case 1 ... 100:
xxx
break;
3)宏定义
#define MIN(x,y) ((x)<(y):(x),(y))
int x = 10;
int y = 20;
int z = MIN(x++,y++);
副作用:
GNUC 支持宏定义局部变量
#define MIN(x,y) \
{
type _x = x; type _y =y; _x<_y?_x:_y}
MIN(int, x++,y++)
{int _x=x++; int _y=y++; _x<_y?_x:_y}
gnuc与ansic的更多相关文章
- ANSIC程序到KeilC51的移植心得
摘要:本文讲述了将ANSIC程序移植到KeilC51上应该注意的事项.文章讲述了存储类型.指针类型.重入函数.根据目标系统RAM的分布的段定位和仿真栈设置.函数指针.NULL指针问题.字节顺序.交叉汇 ...
- C51中的关键字和ANSIC标准关键字
C51中的关键字和ANSIC标准关键字 作 者:武力戡乱 修改日期:2017-09-05 备 注: 1.总备注信息 2.联系方式 3.其它博文链接:武力戡乱博客目录总表 内 ...
- [原]Object-Oriented Programming With ANSI-C
前一段时间面试被问到一个问题,怎么用C去实现面向对象的特性,比如封装.继承和多态.我心想这不是闲的蛋疼么,好吧,我承认我不会...[大哭].然后去网上找相关的文章,有文章推荐了<Object-O ...
- 宽字符,Ansic和Unicode
电脑发展的初期,只是在美国等英文国家使用,英文只有26个字母和其它字符,一个字节最多可以表示256个字符,如字母"A"用0x41(二进制01000001)表示,字母"a& ...
- linux编程开发命令
test命令命令功能test命令是shell环境中测试条件表达式的实用工具.命令语法test(选项)选项说明-b〈文件〉如果文件为一个块特殊文件,则为真;-c<文件〉,如果文件为一个字符特殊文件 ...
- C++ 中常见预定义宏的使用
http://blog.csdn.net/hgl868/article/details/7058906 替代字符串: #define DOWNLOAD_IMAGE_LOG /var/log/png.l ...
- C++ 中宏的使用 --来自:http://blog.csdn.net/hgl868/article/details/7058906
宏在代码中的使用实例: g_RunLog2("Middleware client for Linux, build:%s %s", __DATE__, __TIME__); 下面详 ...
- gcc总结【基本用法】【选项】【动静态库】(转)
1.////////////////////////////////////////////////////////////////////////////////////////////////// ...
- 《Linux命令学习手册》系列分享专栏
<Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...
随机推荐
- multiprocessing创建自定义进程类
1.继承Process2.编写自己的__init__,同时加载父类init方法3.重写run方法,可以通过生成的对象调用start自动运行 from multiprocessing import Pr ...
- BZOJ3295: [Cqoi2011]动态逆序对(树状数组套主席树)
3295: [Cqoi2011]动态逆序对 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 7465 Solved: 2662[Submit][Sta ...
- addFrameScript用法
如何判断一个mc播放完毕之后remove掉他呢, 目前我发现的两种做法,一种是: var boomMc:MovieClip = LoadResource.getMC("boom", ...
- 【转】Linux下的文本dos格式转Unix格式,去除^M符号
原文网址:http://blog.csdn.net/kobejayandy/article/details/13291525 问:我在Windows中通过FTP传一个文本文件到Linux中,但是打开文 ...
- java对图片的处理
原文地址:http://www.blogjava.net/PrettyBoyCyb/archive/2006/11/13/80922.html java 中的图片处理是很让人头疼的一件事情.目前 ja ...
- ruby里面module和class的区别
一句话概括,就是 class可以实例化 module不可以 别的都一样 关于继承的一点区别 class是使用<作为继承的关键字,只支持单继承 module是使用include来做实例继承(实例化 ...
- python文本挖掘输出权重,词频等信息,画出3d权重图
# -*- coding: utf-8 -*- from pandas import read_csv import numpy as np from sklearn.datasets.base im ...
- 二.jQuery源码解析之构建jQuery之构建函数jQuery的7种用法
一:$(selectorStr[,限制范围]),接受一个选择器(符合jQuery规范的字符串),返回一个jQuery对象; 二:$(htmlStr[,文档对象]),$(html[,json对象])传入 ...
- 5月31日上课笔记-Mysql简介
一.mysql 配置mysql环境变量 path中添加 D:\Program Files\MySQL\MySQL Server 5.7\bin cmd命令: 登录:mysql -uroot -p 退出 ...
- bootstrap的引入和使用
Bootstrap的下载 一. 使用Bootstrap第一步,先将生成环境的Bootstrap下载下来.然后将下载,然后引入到自己建好的当前目录中 二.点到起步中的基本模板 将看到的整段代码复制粘贴到 ...