1. 概述:
1. 一维表 : 顺序表 (Input顺序小->大)
2. 查表方法 : 顺序查表和二分法查表
3. 换算公式(线性关系) : (Output - MixOutput) / (Input - MixInput) = (MaxOutput - MixOutput) / (MaxInput - MixInput)
2. 测试:
2. 源码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#ifdef __cplusplus
extern "C"{
#endif
#ifndef _LookUpTable_H_
#define _LookUpTable_H_
typedef enum
{
LookUpTable_PollingMode = 0, /* 顺序查表 */
LookUpTable_DichotomyMode, /* 二分法查表 */
LookUpTable_InvalidMode, /* 无效 */
}LookUpTable_Mode;
typedef struct LookUpTable_Info
{
float Input;
float Output;
} LookUpTable_Info;
/*
pstLookUpTableInfo : 表数据, 顺序表(Input顺序小->大)
TableLength : 表长度
*/
int LookUpTable_Output(LookUpTable_Mode enLookUpTableMode, float Input, float * pOutput,
const LookUpTable_Info * pstLookUpTableInfo, const int TableLength);
#endif
#ifdef __cplusplus
}
#endif
#include "LookUpTable.h"
#ifdef __cplusplus
extern "C"{
#endif
int LookUpTable_Output(LookUpTable_Mode enLookUpTableMode, float Input, float * pOutput,
const LookUpTable_Info * pstLookUpTableInfo, const int TableLength)
{
float Output = 0;
float MixInput = 0;
float MaxInput =

本文介绍了一维查表技术,包括顺序表和二分法查表的实现。通过换算公式展示了线性关系的应用,并提供了相关源码进行测试。
最低0.47元/天 解锁文章
612

被折叠的 条评论
为什么被折叠?



