您现在的位置是:首页 >技术杂谈 >初始C语言(2)网站首页技术杂谈
初始C语言(2)
目录
变量的使用
#include<stdio.h>
int main()
{
int a = 0;
scanf("%d"/*输入的格式*/, &a/*这里需要的是地址,表示数据存放在哪里*/);
printf("%d", a);
return 0;
}
scanf,printf:库函数—— C语言的编译器提供的现成的函数,直接可以使用;
scanf的作用是输入数据,数据从键盘读取到内存中;
printf的作用是输出数据,数据从内存中打印(输出)到屏幕上
使用的时候要包含头文件(stdio.h),不然会报错;
&a:取地址a——取出a的地址;
%d——整型;
%s——字符串;
%f——float(单精度数据类型);
%lf——double(双精度数据类型)
%p——地址的打印;
变量的作用域和生命周期
作用域
作用域是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效或可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域;
- 局部变量的作用域是变量所在的局部变量范围;
int main()
{
{
int a = 100;/*在这个括号里可以用,出了这个括号就用不了了*/
}
printf("%d", a);
return 0;
}
- 全局变量的作用域是整个工程;
同一个源文件下两个不同的文件,引用第一个文件的全局变量,第二个文件依然可以使用;
生命周期
变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段;
变量创建的本质实在内存中开辟一块空间,存放地址;
销毁:是把空间还给操作系统;
局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束;
int main()
{
{
int a = 0;/*局部变量生命周期的开始*/
int b = 0;
int c = a + b;
printf("%d", c);
}/*局部变量生命周期的结束(销毁)*/
return 0;
}
全局变量的生命周期是:整个程序的生命周期;
int a = 100;/*全部变量生命周期的开始*/
int main()
{
{
printf("%d", a);
}
return 0;
}/*全局部变量生命周期的结束(销毁)*
常量
C语言中的常量和变量的定义的形式有所差异;
C语言中的常量分为以下几种:
字面常量
比如:3;3.14;'a'(字符);"abc"(字符串);
直接写出它的值,而且是一个常属性的值;
const修饰的常变量
const int a = 3;/*这里的a是const修饰的常变量*/
a = 5;/*是不能直接修改的!*/
这里的a是具有常属性的,不能被改变,但是本质上还是变量;
#define定义的标识符常量
#include<stdio.h>
#define CH 'a'
int main()
{
printf("%c", CH);
return 0;
}
枚举常量
生活中有些值是可以一一列举的;
比如性别:男,女·,保密;
#include<stdio.h>
enum SEX
{
MALE,/*(枚举常量)*/
FEMALE,/*(枚举常量)*/
SECRET/*(枚举常量)*/
};
int main()
{
printf("%d", MALE);
printf("%d", FEMALE);
printf("%d", SECRET);
}
enum是关键字;
列出来枚举类型enum SEX的可能赋值;
初始值默认是从0开始的,依次向下增1的,可以给初始值赋值,但不能对值进行修改;
字符串+转义字符+注释
字符串
字符串——一串字符(如"abc");
字符——键盘上敲出的任何东西都叫字符(如'a','b','c');
"hello bit"
这种由双引号引起来的一串字符成为字符串面值,或者简称字符串;
字符串的结束标志是一个 的转义字符;
在字符串的末尾隐藏一个 ,这个 是字符串的结束标志;
在计算字符串长度的时候 是结束标志,不算字符串内容;
printf以%s打印字符串的时候,就从你给的地址打印,一直打印到 ,停止;
int main()
{
char ch1[]/*数组*/ = { 'a','b','c' };
char ch2[]/*数组*/ = "abc";
int len1 = strlen(ch1);/*求ch1字符串的长度,并把值赋值给len1*/
printf("%d
", len1);
int len2 = strlen(ch2); /*求ch2字符串的长度,并把值赋值给len2*/
printf("%d
", len2);
return 0;
}
strlen——是一个库函数,用来求字符串长度的,就是从给定的地址,向后数字符,知道遇到 结束, 不统计在内(头文件——#include<string>);
转义字符
转义字符就是转变原来的意思;
转义字符 | 释义 |
?
|
在书写连续多个问号时使用,防止他们被解析成三字母词
|
'
|
用于表示字符常量
|
“
|
用于表示一个字符串内部的双引号
|
\
|
用于表示一个反斜杠,防止它被解释为一个转义序列符
|
a
|
警告字符,蜂鸣
|
|
退格符
|
f
|
进纸符
|
|
换行
|
|
回车
|
| 水平制表符 |
v
|
垂直制表符
|
ddd
| ddd表示1~3个八进制的数字。 如: 130 表示字符X |
xdd
|
dd表示
2
个十六进制数字。 如:
x30
表示字符
0
|
ddd——ddd表示1~3个八进制的数字,八进制的数字转换成十进制后,把十进制作为ASCII值代码的字符;
xdd——dd表示2个十六进制数字,十六进制的数字转换成十进制后,把十进制作为ASCII值代码的字符;
注释
代码中不需要的代码可以直接删除,也可以注释掉;
代码中有些代码比较难懂,可以加一下注释文字;
以//开头的的注释是属于C++注释风格;
//"hello bit"
/*~*/C语言注释风格(不支持注释嵌套);
/*"hello bit"*/
快捷键:(ctrl+k,ctrl+c)注释——(ctrl+k,ctrl+u)取消注释;
选择语句
if语句;
else语句;
int main()
{
int flag = 0;/*一个等号是赋值*/
scanf("%d", &flag);
if (flag == 1)/*两个等号是相等*/
printf("好");
else if (flag == 0)
printf("不好");
}
今天先简单的带大家认识一下选择语句;
循环语句
while语句;
生活中有些事是重复的做的,就是循环;
int main()
{
int line = 0;
while (line < 5000)
{
printf("敲代码:%d
", line);
line++;
}
return 0;
}
今天先简单的带大家认识一下while语句;