逻辑位移和算术位移
动态内存分配 malloc函数
位段,枚举,联合(共用体)
字节序(大小端)定义 用代码判断大小端的两种方式(char*解int 和 通过联合类型/共用体判断)
一维数组,二维数组的传参方式,函数传参方式,回调函数的定义
指针的运算 通过字符指针创建常量字符串 三种打印字符串的方式 函数指针 函数指针数组 函数指针数组的指针
const和assert修饰代码
从整形提升推广到类型转换
1.补码,反码 2.按位与,按位或,按位异或,按位非 3.逻辑与逻辑或 4.左移右移
结构体的声明,初始化,成员访问,传参 以及压栈简介
一、数组名数组名在大多数情况下表示为数组首元素的地址,但有两个例外1.sizeof可用来计算数组所占字节数,sizeof(arr)中的数组arr代表整个数组2.&arr,此时数组arr代表整个数组的地址整个数组的地址和数组首元素的地址有什么区别?假如有int arr[10],数组地址和首元素地址相同,但数组地址+1间隔40个字节,数组首元素地址+1间隔4个字节int main() { i
1. exp1 ?exp2 :exp3表达式含义:判断exp1为真还是假,真则执行exp2,假则执行exp3。例子:int main() { int a = 0; int b = 0; b = a > 5 ? 3 : -3; printf("%d", b); //结果为-3 return 0; }上述代码等价于i
迭代和递归的区别,以及栈溢出简介
1.现象(1)假设有一个int型数组,我们先用int*给函数传参#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> void test(int* arr) { arr[1] = 8; } int main() { int arr[] = { 7,3,4,6,8,9,1,5,2,10 }; test(arr); printf(
有如下代码:#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<string.h> int main() { char arr1[] = "abc"; char arr2[] = { 'a','b','c' }; printf("%d\n", sizeof(arr1)); printf("%d\n
实际参数形式参数,传值调用传址调用的区别,以及c++中的(&+参数)的传参方式
1.strcpy全部替换原字符串#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<string.h> int main() { char arr1[] = "hello world"; char arr2[] = "##################"; //用arr1替换arr2 strcp
前++与后++区别
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号