//.c报错,.cpp不报错。
#include <stdio.h>
#include <stdlib.h>
int a = 1;
int b = a;
void main()
{
printf("%d\n", b);
system("pause");
}
#include <stdio.h>
#include <stdlib.h>
int* p = (int *)malloc(10*sizeof(int));
void main()
{
*p = 10;
printf("%d\n", *p);
system("pause");
}
因为c编译器不支持函数外动态声明变量和分配空间,如果要必须是常量值,例如下面也不行,只要放到函数中就行
#include <stdio.h>
#include <stdlib.h>
int* p = (int *)malloc(10*sizeof(int));
void main()
{
*p = 10;
printf("%d\n", *p);
system("pause");
}
#include <stdio.h>
#include <stdlib.h>
int a = 1;
int b = a;
void main()
{
printf("%d\n", b);
system("pause");
}
#include <stdio.h>
#include <stdlib.h>
int* p = (int *)malloc(10*sizeof(int));
void main()
{
*p = 10;
printf("%d\n", *p);
system("pause");
}
因为c编译器不支持函数外动态声明变量和分配空间,如果要必须是常量值,例如下面也不行,只要放到函数中就行
#include <stdio.h>
#include <stdlib.h>
int* p = (int *)malloc(10*sizeof(int));
void main()
{
*p = 10;
printf("%d\n", *p);
system("pause");
}