・_stprintf_s sprintf_s | swprintf_s :unicode
使用例
TCHAR cbuf[200];
_stprintf_s(cbuf,TEXT("INSERT INTO table1 (class,c1,c2,c3,c4,t1,t2,t3) VALUES (%d,%f,%f,%f,%f,%f,%f,%f)"),
(int)datareader.data.at(i).at(0),
datareader.data.at(i).at(1),
datareader.data.at(i).at(2),
datareader.data.at(i).at(3),
datareader.data.at(i).at(4),
datareader.data.at(i).at(5),
datareader.data.at(i).at(6),
datareader.data.at(i).at(7)
);
dprintf(TEXT("%s\n"),cbuf);
注意点
%dにたいして(int)datareader.data.at(i).at(0)とdouble型の変数は書式にあわせてキャストしないとエラーが出る
作成する文字列に対してバッファが小さいとエラーが出る。 上ではcbuf[100]だと不足するためエラーが出る
実行結果
INSERT INTO table1 (class,c1,c2,c3,c4,t1,t2,t3) VALUES (0,1.867840,0.638700,0.186060,0.468961,-2.860810,2.224490,-2.002330)
最終更新:2007年11月26日 23:11