zoukankan      html  css  js  c++  java
  • 很有意思的算法

    题目:

    设计一个函数,接受两个参数,一个为结构体尺寸,一个为对齐字节数,返回对齐后的结构体所占尺寸(首地址偏移量)。

    分析:

    如果是对8字节对齐,6字节的结构体占用8字节,16字节的结构体占用16字节。第一想法是下面逻辑:

    if(!structSize%alignNum){
    	return (int)(structSize/alignNum)+1;
    }
    else{
    	return (int)(structSize/alignNum);
    }

    另外这个逻辑和浮点数的四舍五入很类似

    return (int)(floatVal+0.5);

    所以最简洁写法如下:

    return ((int)(structSize+alignNum-1)/alignNum)*alignNum;
  • 相关阅读:
    pymysql
    表查询
    元类
    外键约束
    Mysql知识
    C# windows服务的创建与调试
    JQuery随笔
    jQuery插件开发
    http post和put区别
    NPOI
  • 原文地址:https://www.cnblogs.com/aishangxue/p/3673477.html
Copyright © 2011-2022 走看看