1、 全局变量增强
/*C语言*/
#include"stdio.h"
int a = 10;//定义a
int a ;//相当于声明,不报错
//int a = 20; 会报错,重复定义
int main(){
printf("a:%d\n",a);
return 0;
}
/*下列代码在C++中会报错,原因是重复定义*/
#include<iostream>
int a = 10;
int a;//重复定义
int main(){
printf("a:d%\n",a);
return 0;
}
2、C++中所函数和变量必须有类型
在C语言中,函数和变量可以没有类型,由于没有指定参数类型,输出可以根据参数类型来选择输出类型。通常,在C语言中,如果定义的函数的没有参数,建议写func(void),在C++中也是。
3、头文件的包含格式
<>:官方头文件
“”:自己写的头文件
4、sizeof()函数查看数据类型的大小
/*C语言*/
#include"stdio.h"
int main(){
printf("%ld",sizeof(float));
return 0;
}
5、声明和定义的区别
参考连接
声明不分配内存,定义分配内存。一个变量或者函数可以被声明很多次,但是只能被定义一次
6、C语言数组
#include<stdio.h>
#include<string.h>
void array_1(void){
int a[2] = {1, 2};
printf("%d",a[2]);//超内存访问,会有警告,返回随机数
}
void array_2(void){
int a[2] = {2};
printf("%d",a[1]);//未初始化的元素,自动赋值为零
}
void array_3(void){
int a[2] = {1,2,3};
printf("%d",a[2]);//超内存访问,会有警告,返回随机数
}
//遍历数组
void array_4(void){
int a[] = {1,2,3,333,};
for(int i = 0; i < sizeof(a)/sizeof(a[0]); i++){
printf("%d ",a[i]);
}
}
//字符串数组
void array_5(void){
char a[10] = {"abc"};
printf("a的长度是:%lu\n",sizeof(a));//输出为a的定义长度
printf("char的长度为:%lu\n",sizeof(char));
printf("a的字符串长度为:%lu",strlen(a));//输出a的字符串长度
}
//二维数组
void array_6(void){
int d[3][2] = {1, 2, 3, 4, 5, 6};
int b[][2] = {1, 2, 3,};//用零补齐
//int c[3][] = {1, 2, 3};//报错,此种初始化方法错误
char ss[][10] = {"hello","hello1","hello3"};//一个字符串就是一行
printf("%d",b[1][1]);
}
int main(){
array_6();
}