?? gbstrtab.c
字號:
#include "GBStrTab.h"
#include "Error.h"
#include <malloc.h>
#include <stdio.h>
#include <string.h>
const_string *g_StringTabHead;
static int sg_nstr_num;
const char _STR_VAR_NAME[] = "str_%d";
// init string tab
void InitStringTab()
{
g_StringTabHead = NULL;
sg_nstr_num = 0;
}
// free string tab
void DestoryStringTab()
{
const_string *p;
p = g_StringTabHead;
while ( p )
{
const_string *tmp = p;
p = p->next;
free(tmp);
}
g_StringTabHead = NULL;
sg_nstr_num = 0;
}
// add string to string tab
// dont think the same string
// can add in string list , future........
const_string *AddStringToStrTab( const char *str )
{
const_string *tmp;
// malloc the memory
tmp = (const_string *)malloc( sizeof(const_string) );
if ( !tmp )
{
yyerror("Out of memory in AddStringToStrTab()");
user_exit(1);
}
// copy string and assign globe string value NO.
strncpy( tmp->str, str, MAX_STR_LEN );
sprintf( tmp->rname, _STR_VAR_NAME, sg_nstr_num++ );
tmp->next = g_StringTabHead;
g_StringTabHead = tmp;
// ok, go........
return tmp;
}
const_string *get_string_tab_head()
{
return g_StringTabHead;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -