要注意局部变量和全局变量的区别 这两个变量尽量不要相同 容易产生bug 因为会优先局部变量
在使用变量的时候 C语言规定变量要定义在代码块的最前面。
如果要输入内容的话,用到输入函数:scanf 例如
int main()
{
int num1 = 0;
int num2 = 0;
int sum = 0;
scanf("%d%d", &num1, &num2);
sum = num1 + num2;
printf(“sum =%d\n”, sum);
return 0;
}
scanf 是有输入的时候要调用的函数,里面有%d是因为输入的是整型,整型用%d表示,&num1,&num2 ,这里是取地址的意思,取地址就是通过提供的地址,找到表达的式子,方便算sum,sum是第三个局部变量
全局变量是作用在整个程序里面的,如果全局变量未定义,那么默认是0.例如
int a=20; 这是全局变量定义的样子 a是20
int a; 这是全局变量为定义的样子,所以a默认为0
char arr[5]={0}; char表示数组类型 数组arr可以存放五个字符,char 类型一个元素占一个字节,后面{0} 表示元素为空m接下来说数据存储
数据在存储的时候是二进制存储,每个数字、字符都有特定的值,可以通过ASCII表查得。数组里面都有一个\0 用来表示数组的最后一个内容,比如计算字符串长度
int main()
{
char arr1[] = “acb”;
char arr2[] = { ‘a’,‘b’,‘c’ };
printf("%d\n", strlen(arr1));
printf("%d\n", strlen(arr2));
}
要注意使用strlen函数的时候,要引头文件,因为strlen是库函数,结果分别是3,15,但要注意15是随机值,因为要找到\0函数才会结束,所以这里是随机值
int main()
{
char arr1[]=“Here”;
char arr2[] = { ‘H’,‘e’,‘r’,‘e’};
printf("%s\n", arr1);
printf("%s\n", arr2);
return 0;
}
像这里的打印字符,第一个是here,第二个是Here烫烫烫烫Here 因为打印的时候没有检索到\0,所以是这样的结果,当在后面加上0,也就是下面这样时
char arr2[] = { ‘H’,‘e’,‘r’,‘e’,0}; 打印结果就正常了
二进制数
二进制有32位,从右往左数,分别是2的0次方,2的1次方,以此类推,最后一位是2的31次方。
C语言第二篇
最新推荐文章于 2024-05-27 16:07:06 发布