data_type.cpp

来自「基于ANTLR的简单编译器源码version0.1」· C++ 代码 · 共 29 行

CPP
29
字号
#include "data_type.h"

int get_size(MY_TYPE type){  //获取该类型数据的大小
  switch(type){
	case CHAR_T:    return 1;
	case UCHAR_T:   return 1;
	case BIT_T:     return 1;
	case BITS_T:    return 8;
	case STR_T:     return 0;
	case INT16_T:   return 2;
	case UINT16_T:  return 2;
	case INT_T:     return 4;
	case UINT_T:    return 4;
	case BOOL_T:    return 1;
	case FLOOT_T:   return 4;
	case DOUBLE_T:  return 8;	
	default: return 0;
  }
}

void strtobits(string str,int& value){//将形如00010011的字符串转换为len+intvalue类型的字符串
  int val=0,i=0;
  for(int len=str.length()-1;len>-1;len--){
    if(str[len]=='1')
	   val+=pow(2,i);
	i++;
  }
  value=val;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?