WZ6 / Text-C Tips


引数(mchar *szformat, ...)を受け取って書式化する

(2012-04-14 (土) 08:04:14)

自分用のprintfを作る

void my_printf(mchar *szformat, ...)
{ 
	va_list args; 
	va_start(args, szformat); 
	HTEXT s = textvprintf(szformat, (LPDWORD)args));
	va_end(args); 
	
	printf("my_printf:%s", s);
}

_myformattest {
	my_printf("hello,%s%d world", "wz", 7);
}

"wz://", "wzcfg://"をフルパスに展開する

(2011-09-23 (金) 09:01:23)

"wz://"はWZ EDITORのインストールパス
"wzcfg://"はWZ EDITORの設定ファイルを置く場所

HTEXT newobj expand_wz_path()
{
	wchar *w = wdupfn("wz://");
	char *s = strdupW(w);
	HTEXT ret = dup(s);
	free(s);
	free(w);
	if(tosjis(ret, detectkc(ret)))
		return ret;
	else
	{
		printf("fail to tosjis in \"%s\"(%d)\n", __FILE__, __LINE__);
		return 0;
	}
}

HTEXT newobj expand_wzcfg_path()
{
	wchar *w = wdupfn("wzcfg://");
	char *s = strdupW(w);
	HTEXT ret = dup(s);
	free(s);
	free(w);
	if(tosjis(ret, detectkc(ret)))
		return ret;
	else
	{
		printf("fail to tosjis in \"%s\"(%d)\n", __FILE__, __LINE__);
		return 0;
	}
}

_expand_wzcfg_path {
	title: "wz://", "wzcfg://"をフルパスに展開する

	// "wz://"はWZ EDITORのインストールパス
	// "wzcfg://"はWZ EDITORの設定ファイルを置く場所
	
	HTEXT wz = expandwz();
	HTEXT wzcfg = expandwzcfg();
	
	printf("wz://=[%s]\n", wz);
	printf("wzcfg://=[%s]\n", wzcfg);
}