前準備において配列の要素数をsizeとしてmain関数内で定義してました. よく使われるのはmain関数の外側で#defineで定義する方法です. 新たにarray_test.cを用意します. main関数内で初期化される配列aの大きさ,初項,等差を全て#defineで定義します. array_test.c #include <stdio.h> #include "array...
次の例では、for ループメソッドを用いて、6 文字配列に対して正確に 6 回の反復処理を行うことを示します。 #include <stdio.h> #include <stdlib.h> #define STR(num) #num int main(void) { char arr1[] = {'a', 'b', 'c', 'd', 'e', 'f'}; printf(STR(arr1) ": "); ...
#defineでFormが何かマクロ定義してやります。今回はintです。 struct:Map struct_Map typedefstruct_Map{Data*hash_table;unsignedsize;unsignedamount;}Map; Dataの配列を持ちます。sizeは配列のサイズでamountは今入っている量です。これを持っている理由はamountがsizeの2/3に到達するとHash Tableを再...
#define _GNU_SOURCE #include <stdio.h> #include <stdlib.h> #include <string.h> char *truncString(char *str, int pos) { size_t len = strlen(str); if (len > abs(pos)) { if (pos > 0) str = str + pos; else str[len + pos] = 0; } return str; } int main(void) { ch...
#define TPTRAN 0x00000010 /* トランザクション・モードでの送信 */ #define TPNOTIME 0x00000020 /* タイムアウトなし */ #define TPABSOLUTE 0x00000040 /* 絶対的な優先順位の指定 */ #define TPGETANY 0x00000080 /* 有効応答の取り込み */ #define TPNOCHANGE 0x00000100 /* 受信バ...
#define BITS(c) __bits__ + 9 * (255u & c)staticconstchar__bits__[]="00000000\0""00000001\0""00000010\0""00000011\0""00000100\0""00000101\0""00000110\0""00000111\0""00001000\0""00001001\0""00001010\0""00001011\0""00001100\0""00001101\0""00001110\0""00001111\0""00010000\0"...
#include<stdio.h>intmain(){#defineFOREACH(item, arr, start, size) \ for (int i = start, keep = 1; keep && i < size; keep = !keep, i++) \ for (item = arr[i]; keep; keep = !keep)intarr[]={3,9,7,1,8};FOREACH(intz,arr,3,7)printf("Shanii Demo index: %d. elemen...
#概要C言語でコーディングする上で気をつけている点などをまとめて見ました。但し、書き方は人それぞれなので違和感を覚える人もいるかもしれませんが、もし間違っている点がありましたらご指摘お願い致し…
#define キーワードを使用して、C 言語でマクロを定義します。 たとえば、C 言語マクロを使用して MIN 関数と MAX 関数を定義しましょう。以下のコードを参照してください。 #include <stdio.h> #define MIN(i, j) (((i) < (j)) ? (i) : (j)) #define MAX(i, j) (((i) > (j...
(DROP_F,POP_L) // if ( POP_L_OF_Q ) // { // SKIP_MCODE_1WORD; //#define SKIP_MCODE_1WORD McodePointer.w++ // } // else // { // SKIP_MCODE( READ_MCODE_SHORT ); //#define SKIP_MCODE(bytes) McodePointer.b+=(bytes) //#define READ_MCODE_SHORT (*McodePointer.s) //...