いろいろなテクニック.Nucleo と DISCO-F746 用.

Dependencies:   Array_Matrix mbed

Committer:
MikamiUitOpen
Date:
Wed Apr 10 06:32:33 2019 +0000
Revision:
1:bbb9f0c3e523
Parent:
0:bb939e0bc6e2
2

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:bb939e0bc6e2 1 //---------------------------------------
MikamiUitOpen 0:bb939e0bc6e2 2 // 複合リテラルの例
MikamiUitOpen 0:bb939e0bc6e2 3 //---------------------------------------
MikamiUitOpen 0:bb939e0bc6e2 4
MikamiUitOpen 0:bb939e0bc6e2 5 void CompoundLiteral()
MikamiUitOpen 0:bb939e0bc6e2 6 {
MikamiUitOpen 0:bb939e0bc6e2 7 // 配列の場合
MikamiUitOpen 0:bb939e0bc6e2 8 printf("\r\n配列の場合:\r\n");
MikamiUitOpen 0:bb939e0bc6e2 9 Array<int> xInt(3, (int[]){ 2, 8, -5}); // ここで複合リテラルを使用
MikamiUitOpen 0:bb939e0bc6e2 10 for (int n=0; n<xInt.Length(); n++)
MikamiUitOpen 0:bb939e0bc6e2 11 printf("xInt[%d] = %d\r\n", n, xInt[n]);
MikamiUitOpen 0:bb939e0bc6e2 12
MikamiUitOpen 0:bb939e0bc6e2 13 xInt.Assign((int[]){ -1, 2, -3}); // ここで複合リテラルを使用
MikamiUitOpen 0:bb939e0bc6e2 14 printf("\r\n");
MikamiUitOpen 0:bb939e0bc6e2 15 for (int n=0; n<xInt.Length(); n++)
MikamiUitOpen 0:bb939e0bc6e2 16 printf("xInt[%d] = %d\r\n", n, xInt[n]);
MikamiUitOpen 0:bb939e0bc6e2 17
MikamiUitOpen 0:bb939e0bc6e2 18 Array<string> str(2, (string[]){"ABC", "DEFG"}); // ここで複合リテラルを使用
MikamiUitOpen 0:bb939e0bc6e2 19 printf("\r\n");
MikamiUitOpen 0:bb939e0bc6e2 20 for (int n=0; n<str.Length(); n++)
MikamiUitOpen 0:bb939e0bc6e2 21 printf("str[%d] = %s\r\n", n, str[n].c_str());
MikamiUitOpen 0:bb939e0bc6e2 22
MikamiUitOpen 0:bb939e0bc6e2 23 // 構造体の場合
MikamiUitOpen 0:bb939e0bc6e2 24 struct struct1 { int x1; float x2; string str; };
MikamiUitOpen 0:bb939e0bc6e2 25 struct1 data1 = (struct1){ 8, 0.2f, "abc"}; // ここで複合リテラルを使用
MikamiUitOpen 0:bb939e0bc6e2 26 printf("\r\n構造体の場合:\r\n");
MikamiUitOpen 0:bb939e0bc6e2 27 printf("x1: %d\r\n", data1.x1);
MikamiUitOpen 0:bb939e0bc6e2 28 printf("x2: %f\r\n", data1.x2);
MikamiUitOpen 0:bb939e0bc6e2 29 printf("str: %s\r\n", data1.str.c_str());
MikamiUitOpen 0:bb939e0bc6e2 30 }