随笔分类 - C语言与算法
摘要:1.指针和数组区别 #define MSG "abcd" const char arr[] = MSG; const char *pt = MSG; (1)“const char arr[] = MSG” 数组形式arr[]在内存中分配一个含有5个元素的数组(加上末尾的'\0'),每个元素初始化为字
阅读全文
posted @ 2021-05-27 16:43
张妖刀
摘要:一般内存中主要分为:代码区、常量区、静态区(全局区)、堆区、栈区。内存示意图: 栈区:存放函数内的局部变量、形参和函数返回值。系统会自动管理 堆区:由malloc()主动申请、使用free()主动释放 静态区(全局区):静态变量和全局变量,一旦静态区的内存被分配,静态区的内存直到程序全部结束才会释放
阅读全文
posted @ 2021-05-06 13:29
张妖刀
摘要:对齐方式: 1.使用#pragma pack(n)来指定数据结构的对齐值 2.使用 __attribute__ ((packed)) ,让编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐,这样子两边都需要使用 __attribute__ ((packed))取消优化对齐 字节对齐详解
阅读全文
posted @ 2021-05-06 11:50
张妖刀
摘要:一.交换两个变量的值 /*常规写法*/ int temp = a; a = b; b= temp; /*二进制写法*/ a ^= b ^= a ^= b; 二.计数 #include <stdio.h> int main(int argc, char** argv) { int x = 10; wh
阅读全文
posted @ 2020-11-04 16:57
张妖刀
摘要:实现例子 实现两个功能: 1.统计字符串的单词总数 2.统计字符串中长度大于n的个数 在这两个功能中,都需要将字符串中的每个单词单独处理 普通实现 typedef enum __parse_words_mode_t { MODE_SUM = 0, /* 模式:统计单词总数 */ MODE_SUM_G
阅读全文
posted @ 2020-11-04 10:22
张妖刀

浙公网安备 33010602011771号