パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

iPhoneで接続するとWi-Fi機能が無効になってしまうSSID名のバグ」記事へのコメント

  • printf? (スコア:5, 参考になる)

    by Anonymous Coward

    printf(SSID)かsprintf(buffer, SSID)をやってると飛びそうな文字列だけど…。

    まず知ってないとマズい話として、ユーザが入力した何が入ってるか分からん文字列を表示したい、という場合に、

    printf(ユーザが入力した文字列とか);

    は絶対にやっちゃダメな書き方なんだけど。

    printf("%s", ユーザが入力した文字列とか);

    とかputs()を使う必要あり。

    %pはポインタのアドレスを表示なので引数が16進で表示される。
    %sはポインタが指す先を文字列として表示
    %nはそこまでに出力した文字数をポインタが指す先に格納

    なので、もしその書き方をしてしまったというセキュリティ

    • by Anonymous Coward

      良く解説したえらいなぁ
      しかし%nはホントクソ
      printfが古すぎるのや

      • by Anonymous Coward

        C++ で行儀悪いの分かっててもストリームじゃなくて printf 使っちゃうんですよね(ただのロートルなだけですが)
        ただ今時業務系だとロケール切替えのために引数の順序を指定できないと困るので、printf はデバッグトレース時ぐらいしか使わないかなー
        # そしてそのデバッグコードが本番に混ざるまでがお約束

身近な人の偉大さは半減する -- あるアレゲ人

処理中...