初始化时,可随意指定初始化的元素或者元素的范围。

附gnu c 手册。

http://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html

代码:

test.c

 #include <stdio.h>
static const unsigned int boot_gdt[] __attribute__((aligned())) = {
[] = 0x11223344,
[] = 0x11223344,
[ ... ] = 0x32,
[] = 0x11223344
}; typedef struct { unsigned long int pte; } pte_t; int main(void){
int len = sizeof(boot_gdt)/sizeof(int) - ;
printf("the len of boot_gdt is %d \n", len + );
for(int i = ; i <= len; i++){
printf("the %d data is 0x%x\n", i, boot_gdt[i]);
}
}

http://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html#Initializing-Arrays

编译:

$ gcc -o test test.c -std=c99

运行:

$ ./test
the len of  boot_gdt is 16
the 0 data is 0x0
the 1 data is 0x11223344
the 2 data is 0x11223344
the 3 data is 0x32
the 4 data is 0x32
the 5 data is 0x32
the 6 data is 0x32
the 7 data is 0x32
the 8 data is 0x32
the 9 data is 0x32
the 10 data is 0x32
the 11 data is 0x0
the 12 data is 0x0
the 13 data is 0x0
the 14 data is 0x0
the 15 data is 0x11223344

C函数数组元素初始化的更多相关文章

  1. [fW]中断处理函数数组interrupt[]初始化

    中断处理函数数组interrupt[]初始化 2011-05-13 15:51:40 分类: LINUX 在系统初始化期间,trap_init()函数将对中断描述符表IDT进行第二次初始化(第一次只是 ...

  2. C++ Union妙用(将列表初始化用于数组元素)

    Union是个不被注意的关键字,意为联合体,这是个诡异的名字.若不是为了继承C语言,它也不会出现在C++中(虽说,union在C++中得到了扩充,完成了接近类的功能).它的作用主要是节省内存空间,在嵌 ...

  3. PHP implode() 函数 把数组元素组合为字符串

    http://www.w3school.com.cn/php/func_string_implode.asp PHP implode() 函数 PHP String 函数 实例 把数组元素组合为字符串 ...

  4. 关于C/C++中数组元素的初始化

      1.一维数组初始化 对于一维数组,其初始化有一个错误的观点是:一直以为 int a[256]={0};是把a的所有元素初始化为0,int a[256]={1};是把a所有的元素初始化为1. 数组可 ...

  5. implode() 数组元素组合函数

    定义和用法 implode() 函数把数组元素组合为一个字符串. 语法:implode(separator,array); 说明 虽然 separator 参数是可选的.但是为了向后兼容,推荐您使用使 ...

  6. 关于数组的初始化memset函数

    关于数组的初始化memset函数 其实memset复制时按bit8个8个的赋值,有兴趣的可以自己百度.

  7. 3205: 数组做函数参数--数组元素求和1--C语言

    3205: 数组做函数参数--数组元素求和1--C语言 时间限制: 1 Sec  内存限制: 128 MB提交: 178  解决: 139[提交][状态][讨论版][命题人:smallgyy] 题目描 ...

  8. java基础(环境设置,基础语法,函数数组)

    框架图 环境搭建 课程中常见dos命令: dir : 列出当前目录下的文件以及文件夹 md : 创建目录 rd : 删除目录 cd : 进入指定目录 cd.. : 退回到上一级目录 cd/ : 退回到 ...

  9. -1-1 java 基础语法 java关键字 java 注释 常量 语句 运算符 函数 数组定义

    Java语言基础组成 关键字 标识符 注释 常量和变量 运算符 语句 函数 数组 关键字 定义:被Java语言赋予了特殊含义的单词 特点:关键字中所有字母都为小写 用于定义数据类型的关键字 class ...

随机推荐

  1. IntentService的使用

    1.为什么需要IntentService 是LocalService的包装类,简便Service的创建,使用的是startService(),也就是访问者退出Service不会消失. 2.实现原理 步 ...

  2. php实现多表(四表)连接

    <?php include_once "DBHelper.php"; define('HOST', '127.0.0.1'); define('USER', 'root'); ...

  3. mit java open course assignment #2

    package come; public class Marothon { public static void FirstName(String[] args1,int[] args2){ int ...

  4. HTML5全屏API

    现在大多数浏览器都有全屏功能,允许用户来设置或操作.但HTML5的全屏API与之不同,HTML5的全屏API允许web开发工程师在程序中调用. 这样,web开发工程师就可以再网站中设计一个按钮,当该按 ...

  5. 任务管理器进程中多个chrome.exe的问题

    偶然发现任务管理器进程中有多个chrome.exe进程,非常奇怪自己仅仅打开了一次浏览器,为什么会有多个?! 上网一查才发现:原来使用Google浏览器Google Chrome每开一个新标签页面,都 ...

  6. Quartz.NET 2.0 作业调度框架使用

    Quartz.NET是一个开源的作业调度框架,是 OpenSymphony 的 Quartz API 的.NET移植,它用C#写成,可用于winform和asp.net应用中.它提供了巨大的灵活性而不 ...

  7. 如何删除Oracle数据库

    1>点击开始找Oracle的目录,-->点击[Universal Installer],打开点击[卸载产品] 2>除了oracle_home1 不点外,其他的都勾选. 3>再点 ...

  8. Java基础学习笔记1

    Dos的基本命令: Dir:列出当前目录的所有文件和文件夹 Md:创建一个目录 Rd:删除目录 Cd:进入指定的目录 Cd..:退回上一级目录 Cd/:退回根目录 Del:删除文件 Exit:退出do ...

  9. 得到文件的MD5值

    /// <summary> /// 得到文件的MD5值 /// </summary> /// <param name="Path">文件路径&l ...

  10. spring加载jar包中多个配置文件

    转自:http://www.cnblogs.com/GarfieldTom/p/3723915.html <import resource="classpath*:applicatio ...