printfを使う前提で文字列化はこちらに任せ、十進数で(二進数に見える)数字をテーブル管理する。 # define BCD(c) (__bits__[c])staticconstunsignedint__bits__[]={0,1,10,11,100,101,110,111,1000,1001,1010,1011,1100,1101,1110,1111,10000,10001,10
#define EYURPESC_STATUS_HS 5 /* High severe */ #define EYURPESC_STATUS_VHS 6 /* Very high severe*/ EYURPESC での文字配列は固定長ストリングで、右端までスペースで埋められます。 ヌル文字終了ではありません。
#defineでFormが何かマクロ定義してやります。今回はintです。 struct:Map struct_Map typedefstruct_Map{Data*hash_table;unsignedsize;unsignedamount;}Map; Dataの配列を持ちます。sizeは配列のサイズでamountは今入っている量です。これを持っている理由はamountがsizeの2/3に到達するとHash Tableを再...
#include <stdio.h> #include <stdlib.h> #define SIZE (1024*1024*100) int main(void) { int *ptr = NULL; int i; ptr = (int*)malloc(sizeof(int) * SIZE); if (ptr == NULL) { return -1; } free(ptr); for (i = 0; i < SIZE; i ++) { ptr[i] = i; } return 0; }上...
#define TPTRAN 0x00000010 /* トランザクション・モードでの送信 */ #define TPNOTIME 0x00000020 /* タイムアウトなし */ #define TPABSOLUTE 0x00000040 /* 絶対的な優先順位の指定 */ #define TPGETANY 0x00000080 /* 有効応答の取り込み */ #define TPNOCHANGE 0x00000100 /* 受信バ...
#include <stdio.h> #include <stdlib.h> enum TYPE { INTEGER, DOUBLE, INVALID }; #define typename(x) \ _Generic((x), int: INTEGER, double: DOUBLE, default: INVALID) typedef void (*FuncPtr)(); void printInt(int x) { printf("printed from printInt: %d\n", x); } void printDouble...
割り当てと同様に、配列の個々の要素を解放しなければならないことに注意してください。そこで、以下のコードサンプルでは、freeの反復呼び出しを実行するために、deallocMyObjectArrayという別の関数を実装しました。 #include<stdio.h>#include<stdlib.h>#defineMAX 100enumVALID{FALSE,TRUE};typedef...
偉そうにかいているが、C言語の#define文マクロを、C++のTemplateにできないものがある。泣) C言語の#define文マクロをC++のTemplateか何かにする方法 https://qiita.com/kaizen_nagoya/items/20c3f5964cef1da037cb そのうちQAに投げようかなって思っています。 だれか、書き換えれたら教えてくだ...
PA_STREAM_PLAYBACKがPA_STREAM_RECORDに、pa_simple_writeがpa_simple_readに変わった以外はほとんど共通です。pa_simple_read関数についても、引数は write のときと同じです。きっちり bytes (第3引数) バイト分が data (第2引数) に詰め込まれるか、エラーになるかです。
#include <stdio.h> #define InputErr 400 int input(void) { char n[2], e[2]; if (scanf("%1[12345678]%1[\n]", n, e) < 2) { //1~8以外の入力の場合は受け付けず、バッファの分を空読みする scanf("%*[^\n]"); //改行がくるまで空読み scanf("%*1[\n]"); //改行を...