C语言typedef用法

定义类型时可能产生的歧义

#include <stdio.h>

char *a, b;
int main() {
        a = "hello, world";
        b = 'A';
        printf("a = %s, b = %c\n", a, b);
        return 0;
}

这段代码中的b,原本希望能够被定义为char *,实际是char

消除歧义

#include <stdio.h>

typedef char* PCHAR;

PCHAR a, b;
int main() {
	a = "hello, world";
	b = "ABC";
	printf("a = %s, b = %s\n", a, b);
	return 0;
}

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部