アカウント名:
パスワード:
printf(SSID)かsprintf(buffer, SSID)をやってると飛びそうな文字列だけど…。
まず知ってないとマズい話として、ユーザが入力した何が入ってるか分からん文字列を表示したい、という場合に、
printf(ユーザが入力した文字列とか);
は絶対にやっちゃダメな書き方なんだけど。
printf("%s", ユーザが入力した文字列とか);
とかputs()を使う必要あり。
%pはポインタのアドレスを表示なので引数が16進で表示される。%sはポインタが指す先を文字列として表示%nはそこまでに出力した文字数をポインタが指す先に格納
なので、もしその書き方をしてしまったというセキュリティ
良く解説したえらいなぁしかし%nはホントクソprintfが古すぎるのや
文字数なら戻り値があるのに、%nってどう使うんだろな。
全部じゃなくて、%nの位置までに出力した文字数ってとこに意味があるんやで。
空白区切り可変長のカラムヘッダを出力して、次の行にカラム毎の区切り線出したい時とか便利やろ?
便利かもしれんがprintfに入れる機能とは思えない・・・
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
弘法筆を選ばず、アレゲはキーボードを選ぶ -- アレゲ研究家
printf? (スコア:5, 参考になる)
printf(SSID)かsprintf(buffer, SSID)をやってると飛びそうな文字列だけど…。
まず知ってないとマズい話として、ユーザが入力した何が入ってるか分からん文字列を表示したい、という場合に、
printf(ユーザが入力した文字列とか);
は絶対にやっちゃダメな書き方なんだけど。
printf("%s", ユーザが入力した文字列とか);
とかputs()を使う必要あり。
%pはポインタのアドレスを表示なので引数が16進で表示される。
%sはポインタが指す先を文字列として表示
%nはそこまでに出力した文字数をポインタが指す先に格納
なので、もしその書き方をしてしまったというセキュリティ
Re: (スコア:0)
良く解説したえらいなぁ
しかし%nはホントクソ
printfが古すぎるのや
Re: (スコア:0)
文字数なら戻り値があるのに、%nってどう使うんだろな。
Re: (スコア:1)
全部じゃなくて、%nの位置までに出力した文字数ってとこに意味があるんやで。
空白区切り可変長のカラムヘッダを出力して、
次の行にカラム毎の区切り線出したい時とか便利やろ?
Re:printf? (スコア:0)
便利かもしれんがprintfに入れる機能とは思えない・・・