文字列の最初の文字が定義された文字であるかどうかを確認するマクロを作成しようとしています。マクロにはテキストと文字が渡され、テキストの最初の文字が何であるかを確認したいと思います。文字として渡されます。これについて最もクリーンな方法は何ですか?
#define Check(Text, character) ((CHECK IF THE FIRST SPACE IS THE CHARACTER) ? True : False)
文字列の最初の文字が定義された文字であるかどうかを確認するマクロを作成しようとしています。マクロにはテキストと文字が渡され、テキストの最初の文字が何であるかを確認したいと思います。文字として渡されます。これについて最もクリーンな方法は何ですか?
#define Check(Text, character) ((CHECK IF THE FIRST SPACE IS THE CHARACTER) ? True : False)
#define Check(Text, character) ((charachetr == Text[0]) ? True : False )
それを行う非常に簡単な方法:
#define check(s,c) (s[0]==c)
例えば :
#include <stdio.h>
#define check(s,c) (s[0]==c)
int main ( )
{
char * x = "test";
if check(x,'t')
printf("ok\n");
}