ランタイムエラー

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
dic

ランタイムエラー

#1

投稿記事 by dic » 15年前

vector<string> に格納している内容をテキストに出力するという関数を自作してるのですが
ランタイムエラーというのがでて エラーが起きてるようですが、原因がまったくわかりません

ソースは以下のとおりとなってます
void	DebugOut( const vector<string> *v, char *filename ) {
	int	i;
	FILE	*file = fopen( filename, "wt" );
	for( i=0; i<v->size(); i++ ) {
		char	buf[10240];

		//	文字列の長さチェック 開始
		int	len = strlen( v->at(i).c_str() );
		printf( "i = %d  len = %d\n", i, len );
		if( len >= 10240 ) {
			fputs( "over! error\n", file );
			continue;
		}
		//	文字列の長さチェック 終了

		memset( buf, 0, sizeof(buf) );
		sprintf( buf, v->at(i).c_str() );
		fputs( buf, file );
	}
	fclose( file );
}
どなたかエラーの原因が分かるかたいませんでしょうか?

dic

Re:ランタイムエラー

#2

投稿記事 by dic » 15年前

自己解決しました

sprintf( buf, v->at(i).c_str() );



strcpy( buf, v->at(i).c_str() );

に変更したらエラーがでなくなりました

たかぎ

Re:ランタイムエラー

#3

投稿記事 by たかぎ » 15年前

文字列に % が含まれていたのでしょうね。

dic

Re:ランタイムエラー

#4

投稿記事 by dic » 15年前

解決おしてませんでした
すいません

閉鎖

“C言語何でも質問掲示板” へ戻る