关于C语言中不允许在函数外部给全局变量赋值
程序员文章站
2024-01-26 10:07:10
...
#include <stdio.h>
typedef struct
{
int r;
int t;
char y;
}Tyep_T;
Tyep_T tyep;
Tyep_T *ptyep ;
/* Tyep_T *ptyep (int a);这种操作属于声明部分不应称为语句,因为它不产生机器操作,而只是对变量的定义
ptyep = &tyep;这是个赋值语句;能产生机器操作;即是执行语句,执行语句要放入函数体内部。所以全局
变量是不能这样赋值的。如果想给全局变量赋值可以这样操作Tyep_T *ptyep = &tyep ;因为这样是在定义的
同时给变量变量赋值,但就是不能单列一条语句;
*/
ptyep = &tyep;
//Tyep_T *ptyep = &tyep ;
int main(void)
{
char b;
int x;
int *p;
p = &x;
char a = 255;
b = a + 1;
int i = 4294967295;
printf("sizeof(int) = %d\n\r",sizeof(int));
printf("b + 1 = %d\n\r", i + 1);
}
下一篇: 数据库优化之索引