重学c语言1

1 存储空间
bit 1
Byte 8
Kb 81024
Mb 8
10241024
Gb 8
102410241024
Tb 81024102410241024
Pb 81024102410241024*1024
2 出现问题-VS软件上总是有某些函数不安全的问题,例如说,scanf
解决方案1 看一下它出现的是什么问题,然后在开头加上#define _CRT_SECURE_NO_WARNINGS 1
解决方案2 project-属性-c/c+±预处理器-预处理器定义;添加_CRT_SECURE_NO_WARNINGS
解决方案3 新建项目-Win32控制台应用程序-关闭预定义头和安全编译检查,打开空项目
解决方案4 使用scanf_s函数
解决方案5 在VC文件夹下下newc++file.cpp里添加#define _CRT_SECURE_NO_WARNINGS 1

3 常量
1 字面常量
直接写出来的常量

310

2 const修饰的常变量
不是真正的常量,而是具有常属性的无法修改的变量

const int n = 1;

3 #define定义的标识符常量

#define MAX 10
Int main()
{
Int arr[MAX] = {0};
Printf(%d\n”,MAX);
Return 0;
}

4 枚举常量
枚举关键-enum

enum Color
{
	YELLOW,
	WHITE,
	GREEN,
	BLUE,
	RED,
	PINK
};
int main()
{
	enum Color colour =RED;//colour 枚举变量
	colour = PINK;
	printf("%d\n", colour);
}

4 字符串
用双引号引起的一串字符

int main()
{
	char x[] = "asdn";//其中放了‘a'/'s'/'d'/'n'/'\0'----'\0'是字符串的结束标志
	printf("%s\n", x);
	char y[] = { 'a','b','s',0 };//在最后面没有\0或0的时候,它会打印一些随机值,在随机值中找到\0后才停止
	printf("%s\n", y);
	printf("%d\n", strlen(x));
	printf("%d\n", strlen(y));
	return 0;
}

5转义字符
?在书写多个连续问好时使用,防止被解析成三字母词
\’用于表示字符常量
\”表示一个字符串内部的双引号
\表示一反斜杠,防止它被解释为转义序列符
\a警告字符,蜂鸣
\b退格
\f进纸符
\n换行
\r回车
\t水平制表符
\v垂直制表符
\ddd ddd表示1-3个八进制数字如\130 X
\xdd dd表示2个十六进制数字如\x30 0

int main()
{
	char x[] = "asdn";//其中放了‘a'/'s'/'d'/'n'/'\0'----'\0'是字符串的结束标志
	printf("%s\n", x);
	char y[] = { 'a','b','s',0 };//在最后面没有\0或0的时候,它会打印一些随机值,在随机值中找到\0后才停止
	printf("%s\n", y);
	printf("%d\n", strlen(x));
	printf("%d\n", strlen(y));
	printf("%d\n", strlen("c:\test\32\test.c"));//32表示8进制代表的那个十进制数字,作为ASCII码值对应的字符
	return 0;

6注释
c的注释风格/* */----不能嵌套注释
C++的注释风格//------可以注释一行

7循环

int main()
{
	int line = 0;
	while (line < 5)//这个用的是括号加大括号
	{
		printf("继续%d\n",line);
		line++;
	}
	if (line >= 20)
	{
		printf("good offer");
	}
}

8 函数
库函数
自定义函数

int Add(int x, int y)
{
	int z = x + y;
	return z;
}

int main()
{
	int a = 1;
	int b = 2;
	int c = Add(a, b);
	printf("%d\n", c);
}

9 数组

int main()
{
	int arr[10];
	char ch[20];
	float arr2[5];
	int i = 0;
	int warr[10] = { 1,2,3,4,5,6 };
	printf("%d\n", arr[6]);
	while (i < 10)
	{
		printf("%d\n",warr[i]);
		i++;
	}
}

10 操作符
单目操作符
!逻辑取反
-负值
+正值
&取地址
Sizeof操作数的类型长度(以字节为单位)
~对某数的二进制按位取反
–前置、后置
++前置、后置
*间接访问操作符(解引用操作符)
(类型)强制类型转换
双目操作符
三目操作符
关系操作符

int main()
{
	int a = 3;
	a << 1;
	int b = a << 3;
	printf("%d\n%d\n", a, b);
	int c = a & b;
	int d = a | b;
	printf("%d\n%d\n", c,d);
	int e = a ^ b;
	printf("%d\n", e);//^异或
	a = a + 1;//可以转化为:
	a += 1;
	//复合赋值符
	//+= -= /= %= <<= >>= &= |= ^=
	//单目操作符、双目操作符、三目操作符
	printf("%d\n", a);
	printf("%d\n", !a);
	printf("%d\n", sizeof(a));
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

斯金

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值