sprintf()関数で、たとえば下記のような使い方(4行目)って大丈夫なものでしょうか?上の方は単純化するようにこのように書いていますが、strはスタック領域に限定しませんし、ヒープ領域としても適切なサイズがアロケートされている前提で、あらかじめ文字列(\0終端)が格納された状態で4行目は大丈夫かというのが質問の趣旨です。
手元の環境ではとりあえず意図したとおりに動いている感じはしますが、ぱっと見メモリが壊れてもおかしくなさそうな気がするため、気になって質問してみました。
char str[100];
size_t len;
sprintf(str, "hoge");
len = sprintf(str, "%s %d", str, 100);
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# C# 浮動小数の数値文字列化 1 2022/04/18 15:15
- C言語・C++・C# str[j++]の意味 2 2022/08/30 16:20
- C言語・C++・C# c言語配列の結合についてです。 なぜうまくいかないのでしょうか。 #include <stdio.h 4 2022/05/30 22:42
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- Visual Basic(VBA) VBA ユーザーフォームからSubプロージャ―に値を引き渡す方法 3 2023/04/09 01:54
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
c言語のポインタへの文字列入力...
-
newしないオブジェクトについて
-
64ビットと32ビットの違い
-
大容量の静的な確保の限界値
-
callocの処理速度
-
GDI+におけるメモリの開放について
-
newでrealloc?
-
malloc呼び出し時のセグメンテ...
-
構造体でchar name[]と*nameの...
-
allocってなんですか?
-
プログラムが途中で強制終了し...
-
C++のnewで確保したメモリーの...
-
fread関数および動的なメモリ確...
-
画像を読み込む配列の確保。
-
void*型のデータサイズ
-
ビットをローテートするプログ...
-
アンマネージド関数でのメモリ...
-
C++で、メンバもヒープに確保さ...
-
MSDNがgethostbynameではなくge...
-
配列の添え字の最大数とは?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
c言語のポインタへの文字列入力...
-
allocってなんですか?
-
newしないオブジェクトについて
-
mallocについて
-
配列の添え字の最大数とは?
-
ヒープメモリの解放について
-
ビットをローテートするプログ...
-
C++で、メンバもヒープに確保さ...
-
malloc呼び出し時のセグメンテ...
-
プログラムが途中で強制終了し...
-
指定したメモリアドレスの値の...
-
スタック破壊の上手な見つけ方...
-
void*型のデータサイズ
-
ポインタのポインタの初期化法
-
free関数で動作が止まる
-
callocの処理速度
-
MSDNがgethostbynameではなくge...
-
C++のnewで確保したメモリーの...
-
sprintf()の使い方について
-
Accessで、メモリを開放するタ...
おすすめ情報