C语言中的常量分为以下几种:
·字面常量:“3.14”;“10”;“a”;"abcdef"
·const修饰的常变量:如下代码,输出结果为10,因为其已被const修饰,变为常变量,但其本身仍为变量
#include<stdio.h>
int main()
{
const int num=10;
num=20
printf("num=%d",num)
return 0;
}
·#define定义的标识符常量
·枚举常量
由双引号引起来的一串字符称为字符串面值,简称字符串。
ps:字符串结束的标志是一个\0的转义字符。在计算字符串长度的时候\0是结束标志,不算作字符串内容。
该示例进一步展示了\0是字符串结束的标志,若没有\0打印时会出现乱码的情况。
转义字符:转义字符是以”\“为开头的字符,后面跟一个或几个字符,其意思是将反斜杠"\"后面的字符转变成另外的意思。
在书写连续多个问号时使用,防止他们被解析成三子母词,三字母词存在于老一版的编译器中。
#include<stdio.h>
int main()
{
print("(are you ok\?\?)\n");// \?在书写连续多个问号时使用,防止他们被解析成三字母词
return 0;
}
只是单纯的为了输出单引号和双引号
#include<stdio.h>
int main()
{
print("\'");
print("\"");
return 0;
}
水平制表符,输出结果相当于一个按一次Tab键所拉开的距离
#include<stdio.h>
int main()
{
printf("a\ta");
return 0;
}
输出结果为
ddd表示1~3个八进制的数字。如:\130,
dd表示2个十六进制数字。如:\x30
此处涉及进制转换,进制转换课程链接:【最强干货】详解二进制,八进制,十进制,十六进制的相互转换_哔哩哔哩_bilibili
#include<stdio.h>
int main()
{
printf("%c\n", '\130');
return 0;
}
注:打印字符用%c
此处打印的结果为:“X”,因为八进制数字130转化为十进制数字88,对应ASCII表为X。
打印时输出的是表示的进制转化为十进制对应的ASCII码表对应的字符。
用于表示一个反斜杠,防止它被解释为一个转义序列符,相当于将已经用“\"转义的字符取消,如同双重否定是肯定的效果。而\\的另一个作用是注释,可以解释代码的意思,不被编译。
警告字符,蜂鸣
#include<stdio.h>
int main()
{
printf(“\a”);
return 0;
}
#include<stdio.h>
int main()
{
printf("%d\n", strlen("c:\test\328\test.c"));
return 0;
}
由语法规则可知,转义字符\t代表一个字符,而\ddd为八进制数字,但八进制为0~7不包含8,故\328要算做两个字符串长度。本题答案为:14
注释有两种风格:·C语言风格的注释/*xxxxx*/
缺陷:不能嵌套注释
·C++风格的注释//xxxxxx
优点:可以注释一行,也可以注释多行
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int coding = 0;
printf("你会努力学c语言吗?(选择1or0):>");
scanf("%d", &coding); //存放数值
if (coding == 1)
printf("一份好的offer\n");
if (coding == 0)
printf("回家卖红薯\n");
return 0;
}
此代码中有1和0两种选择,选择1和0会输出不同的结果。
#include<stdio.h>
int main()
{
int line = 0;
while (line < 200)
{
printf("写代码:%d\n",line);
line++;
}
if (line == 200)
{
printf("好offer\n");
}
return 0;
}