gpt4 book ai didi

c - 对普通变量使用类型修饰符(near、far、huge)

转载 作者:太空宇宙 更新时间:2023-11-04 02:39:41 26 4
gpt4 key购买 nike

我使用类型修饰符(far,near,huge) 普通变量而不是指针,发现这些指针类型修饰符只适用于全局普通变量,但使用时会产生错误 block 的局部变量。

int near a,far b,huge c;

int main()
{
int d,e,f;

// int near a,far b,,huge c;
// long int near a,far b,huge c;
// long long int near a,far b,huge c;

//printf("\n size of a=%d ,b=%d ,c=%d ,d=%d ,e=%d ,f=%d",sizeof(a),sizeof(b),sizeof(c),sizeof(d),sizeof(e),sizeof(f));

printf("\n address of a=%u ,b=%u ,c=%u ,d=%u ,e=%u,f=%u",&a,&b,&c,&d,&e,&f);
return 0;
}

为什么这允许使用全局变量而不是局部变量。此外,变量最终会变成什么,即它变成一个指针、一个范围更大的整数或完全是其他东西。

最佳答案

nearfarhuge 影响变量存储的位置和类型。由于局部变量总是存储在堆栈中,因此对局部变量使用这些修饰符没有任何意义。

请注意,这些功能都是 16 位 DOS 平台独有的。它们未在现代系统中使用——您可以安全地忽略它们。

关于c - 对普通变量使用类型修饰符(near、far、huge),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33373701/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com