c与c++的复习
嘿嘿长时间不复习是会忘记的
不怕不怕不怕
这个作者很懒,什么都没留下…
展开
-
【LeetCode 】11 盛最多水的容器
LeetCode 11题 盛最多水的容器 题目描述:给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明:你不能倾斜容器。 我脑子有些容易卡壳。尤其在这道题目上。 捋了捋思路。可以把储水量理解成面积S。 这个面积怎么算? 是两条边中最短的那条边乘以x轴上的长度。 x轴长度最长是什么时候?就是当我选取的两条原创 2022-03-18 13:03:41 · 7082 阅读 · 0 评论 -
诡异的int8 data[1], 为啥不使用int32 *data
今天看sdk代码,看到一个地方,特别不懂。 tlv结构体大概是如下定义的: typedef struct tlv{ uint16 id; uint16 len; uint8 data[1]; // 重点在这 } 这个data命名是一个数组,里面存储的是uint8的内容。代码后面,是这么用的 uint8 *data_buf; uint8 *idp = (uint8 *)tlv; // tlv是一个tlv *类型的数据 uint8 *lenp = idp + sizeof(tlv->id);.原创 2022-01-21 16:18:48 · 440 阅读 · 0 评论 -
C的复习之字符数组
初始化 char f[] = "I love the world"; char g[] = {"I love the world"}; //与上一种的初始化方法相同 sizeof 17 char t[] = {'I', ' ','l'}; // sizeof 3 字符串处理函数 #include<string.h> // strlen 获取字符串长度,而不是尺寸 char f[] = "I love the world"; printf("%u\n",strlen(f)); // 输原创 2020-09-22 10:02:10 · 94 阅读 · 0 评论