strutils.h

来自「The library provides supports for run-ti」· C头文件 代码 · 共 79 行

H
79
字号
#ifndef STRUTILS_H#define STRUTILS_H#include "pi/platform.h"#ifndef __WINDOWS__	#define stricmp   strcasecmp	#define strnicmp  strncasecmp#endif// As strstr but case insensitiveconst char *stristr(const char *sbig, const char *ssmall);// Not reentrantconst char *Int2Str( int i, const char *fmt=NULL );const char *TruncStr( const char *str, int max_len );// Look for keyword at str (skips space). If keyword length know, pass along in kwl.bool keywordieq(const char *str, const char *kw, int kwl=-1);bool keywordeq(const char *str, const char *kw, int kwl=-1);// Search for keyword after strconst char *keywordifind(const char *str, const char *kw, const char *pend=NULL, bool advance_past_keyw=true);const char *keywordfind(const char *str, const char *kw, const char *pend=NULL, bool advance_past_keyw=true);const char *SkipSpace( const char *pc );const char *SkipSpaceRev( const char *pc );const char *SkipToSpace( const char *pc );// Accept token at str, consume whitespace before and afterconst char *StrAccept( const char* str, const char *token );// Get word before pointer, NOTE!: 0-terminateschar *GetWordRev( char *pc );// Get word after pointer, NOTE!: 0-terminateschar *GetWordFwd( char *pc );// Substitute in string, can only do same length or shorter substitutionsint strsubst_shorter( char *str, const char *find, const char *repl, bool do_all=false );// As strpbrk but reversedconst char *strrpbrk( const char *str, const char *seps );// Check if string ends/starts with certain wordbool strendswith( const char *str, const char *word );bool strendswithi( const char *str, const char *word );bool strstartswith( const char *str, const char *word );bool strstartswithi( const char *str, const char *word );// Bounded version of strchr, strstr, stristr // Look for ch between str and pend (bounded)const char *strchr_b( const char *str, char ch, const char *pend );// Look for ps between str and pend (bounded)const char *strstr_b( const char *str, const char *ps, const char *pend );// Look for ps between str and pend (bounded)const char *stristr_b( const char *str, const char *ps, const char *pend );// Search for an unescaped version of the characterconst char *strchr_noesc( const char *str, const char ch, const char *pend=NULL );const char *strrchr_noesc( const char *str, const char ch );// Search for an unqoted version of the characterconst char *strchr_nostr( const char *str, char ch, const char *pend=NULL );const char *strrchr_nostr( const char *str, char ch );// Search for an unqoted version of the stringconst char *strstr_nostr( const char *str, const char *substr, const char *pend=NULL );// Search for an unqoted version of the string (case insensitive)const char *stristr_nostr( const char *str, const char *substr, const char *pend=NULL );#endif // STRUTILS_H

⌨️ 快捷键说明

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