误用sizeof()计算指针

cpp 复制代码
#define LEN(x)  (sizeof(x)/sizeof(x[0]))

int longestCommonSubsequence(char* text1, char* text2) 
{

    int n1 = LEN(text1) - 1;
    int n2 = LEN(text2) - 1;
    
}

sizeof(text1)得到的是指针的大小,LEN(text1) = sizeof(text1)/sizeof(text1[0]) 在64位系统下为8/1=8。

计算字符数组长度应直接用strlen()。

相关推荐
M__331 天前
动态规划进阶:简单多状态模型
c++·算法·动态规划
未来之窗软件服务1 天前
计算机等级考试—Dijkstra(戴克斯特拉)& Kruskal(克鲁斯卡尔)—东方仙盟
算法·计算机软考·仙盟创梦ide·东方仙盟
Hcoco_me1 天前
大模型面试题89:GPU的内存结构是什么样的?
人工智能·算法·机器学习·chatgpt·机器人
N.D.A.K1 天前
CF2138C-Maple and Tree Beauty
c++·算法
im_AMBER1 天前
Leetcode 104 两两交换链表中的节点
笔记·学习·算法·leetcode
程序员-King.1 天前
day159—动态规划—打家劫舍(LeetCode-198)
c++·算法·leetcode·深度优先·回溯·递归
小雨下雨的雨1 天前
禅息:在鸿蒙与 Flutter 之间寻找呼吸的艺术
算法·flutter·华为·重构·交互·harmonyos
浅念-1 天前
C语言——单链表
c语言·开发语言·数据结构·经验分享·笔记·算法·leetcode
hans汉斯1 天前
建模与仿真|基于GWO-BP的晶圆机器人大臂疲劳寿命研究
大数据·数据结构·算法·yolo·机器人·云计算·汉斯出版社
wazmlp0018873691 天前
python第一次作业
开发语言·python·算法