C日記——汎用的な使用

2762 ワード

私たちは時々ヒントのあるコンパイラを使って、ヘッダーファイルに含まれる方法を入力します.彼は入力パラメータのタイプにvoid*,intがあることをヒントにします.その中でvoid*は私が今日話したい汎用型です.名前の通り、どんなタイプでも彼に伝えることができます.強制変換後、他のタイプに伝えることができます.実は彼の使用はまず整形ではありません.
    int q=10;
    void *u;
    u=&q;//     u=(void*)q;
    int b=*((int *)u);//     int
    printf("%d",b);

もじがた
    char w='c';
    void*u=&w;
    char s=*((char *)u);
    printf("%c",s); 

文字配列タイプ
    char z[]="hello";
    void*u=z;
    char *v=(char *)z;//         
    printf("%s",v); 

メソッドへの入力ポインタで汎用を返すには2次ポインタが必要です.この汎用アドレスの値を変更するのは2次ポインタのみです.
#include<stdio.h>
void test(void **a);
int main(){
    void *u;
    test(&u);
    printf("%d",*((int*)u));
    return 0;
}
void test(void**a){
    int b=5;
    void *c=(void *)&b;//     
    *a=c; 
    return ;
}

汎型は私のブログで言ったように、海納百川は、容乃大があって、彼の強大なところはどんなタイプを収容することができて、他の言語を学ぶまで基本的に汎型を統合してあなたにあげることができて、使うのはもっと便利ですが、Cという言語の基礎授業をしっかり打つのはいつも間違いありません.