我想知道关于类型转换的一件事,据我所知,变量可以在某些操作中转换为其他类型。
int c;
char i;
i = (char)c;
Run Code Online (Sandbox Code Playgroud)
类型转换c为字符并分配给i. 其中c= (int)i;类型转换i为整数。
上面提到的两种操作有什么区别吗?当使用类型转换将字符分配为整数时会发生什么?
我正在使用c18编译器,我在project.h中声明了外部变量x
并在
project.h
extern unsigned int x;
Run Code Online (Sandbox Code Playgroud)
在file1.c
#include"project.h"
foo1()
{
x=200;
}
Run Code Online (Sandbox Code Playgroud)
并在foo2.c
#include"project.h"
foo2()
{
printf("%d",x);
}
Run Code Online (Sandbox Code Playgroud)
foo1首先在foo2之前执行我在project.h中进行了extern声明,我在foo1.c中定义了x
如果foo2.c必须有200作为x值正确.?