变量
1,字面变量
2.const修饰的常变量
3,define 定义的标识符常量
#define _CRT_SECURE_NO_WARNINGS//只有vs编译需要
#include<stdio.h>
#include<string.h>
#define Max 100
#define STR "abcdef"
int main() {
const int a = 10;//在c语言中,const修饰的是a,本质是变量,但是不能被修改,有常量的属性
int arr[10] = {0};//10是常量,里面不能放变量
printf("%d\n", a);
printf("%d\n", Max);
printf("%s\n", STR);
return 0;
}
枚举常量
#include<stdio.h>
#include<string.h>
//枚举常量
enum Color
{
//枚举常量
RED,
GREEN,
BLUE
};
//性别
enum Sex
{
//枚举常量
MALE,
FEMALE,
SECRET
};
int main() {
//三原色
//red green blue
int num = 10;
enum Color c = RED;
enum Color b = GREEN;
enum Color a = BLUE;
printf("%d\n", c);
printf("%d\n", b);
printf("%d\n", a);
//枚举常量默认是从0开始,依次向下递增1开始的
}
字符串
#include<stdio.h>
#include<string.h>
int main() {
//100 int类型
//char 字符类型
//'a' ; 字符
//char ch ='w';//字符
//c语言中有没有字符串类型呢?--没有
//"abcdef"
char arr1[] = "abcdef";//7('\0',不确定)
char arr2[] = {'a','b','c','d','e','f','\0'};
//字符串的结束标志是一个\0的转义字符
printf("%d\n", strlen(arr1));//6
printf("%d\n", strlen(arr2));//如果后面没有'\0',返回的值不确定
/*printf("%s\n",arr1);
printf("%s\n", arr2);*/
return 0;
}
打印类型
//%d - 打印整型
//%c - 打印字符
//%s - 打印字符串
//%f - 打印float类型的数据
//%lf - 打印double类型的数据
//%zu - 打印sizeof的返回值
转义字符
#include<stdio.h>
#include<string.h>
int main() {
printf("%c\n",'\'');//\' 转义字符 表示 '
printf("\"");//和上面类似: \" 转义字符 表示 "
printf("abcd\\0ef\n");// \\0 让转义字符\0 无效
printf("%c\n",'\130');//(\ddd ) 8进制的130 转换为十进制对应ASCLL码表的88---即为X
printf("%c\n", '\x63');//(\xdd) 16进制的63 转换为十进制为99 对应c
printf("%d\n",strlen("qwer t"));//空格也是字符 6
printf("%d\n",strlen("c:\test\628\test.c"));
// 转义字符\t是一个字符(执行后效果是4个字符), \62是一个字符(\ddd---8进制是0-7),所以输出是14
return 0;
}