12.07.2015 Views

RealView Compilation Tools コンパイラユーザガイド - ARM ...

RealView Compilation Tools コンパイラユーザガイド - ARM ...

RealView Compilation Tools コンパイラユーザガイド - ARM ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

コーディング 慣 行複 合 リ テ ラルISO C99 は、 複 合 リ テ ラルをサポー ト し ています。 複 合 リ テ ラ ルは、 後 に イ ニシャライザが 続 くキャス トのよ うなものです。 複 合 リ テ ラ ルの 値 はキ ャ ス トで 指 定 された 型 のオブジェ ク ト で、 イ ニシ ャ ラ イザで 指 定 された 要 素 が 含 まれています。 ま た、 複 合 リ テ ラ ルは 左 辺 値 です。 以 下 に 例 を 示 し ます。int y[] = (int []) {1, 2, 3};int z[] = (int [3]) {1};指 定 済 みのイ ニシ ャ ラ イザC90 には、 配 列 、 構 造 、 ま た 共 用 体 の 特 定 の メ ンバを 初 期 化 する 方 法 があ りません。 C99 では、 指 定 済 みの イ ニシ ャ ラ イ ザを 使 用 する こ とによ り、 配 列 、構 造 、 ま たは 共 用 体 の 特 定 の メ ンバの 名 前 ま たは 添 え 字 に よ る 初 期 化 がサポー ト されています。 以 下 に 例 を 示 し ます。typedef struct{char *name;int rank;} data;data vars[10] = { [0].name = "foo", [0].rank = 1,[1].name = "bar", [1].rank = 2,[2].name = "baz",[3].name = "gazonk" };明 示 的 に 初 期 化 さ れていない 集 合 の メ ンバは、 デフ ォル ト でゼ ロ に 初 期 化 されます。16 進 浮 動 小 数 点 数C99 は、 16 進 形 式 で 記 述 で き る 浮 動 小 数 点 数 をサポー ト し ています。 以 下 に例 を 示 し ます。float hex_floats(void){return 0x1.fp3; // 1 15/16 * 2^3}16 進 形 式 では、 指 数 は、 重 要 な 部 分 を 乗 算 する 2 の 累 乗 を 示 す 10 進 数 です。したがって 0x1.fp3 = 1.9375 * 8 = 1.55e1 となります。5-52 Copyright © 2002-2010 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DUI 0205IJNon-Confidential, ID 100419

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!