1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

競プロで使わないほうが安全な変数名

Last updated at Posted at 2024-08-02

競技プログラミングでは短い変数名を使いがちです。
それ自体は問題ないのですが、 変数名として rm, del, erase を用いるべきではありません。
RM, Del など大文字が含まれるものも同様に不適です。

これらは Bash・コマンドプロンプト・PowerShell などで削除コマンドとして使われます。
例えば Bash で rm a.txt を実行するとファイル a.txt が削除されます。
そのため、変数名に rm などを使うと、提出時のコードのコピペの際に誤ってターミナルにコードを貼り付けた場合、コマンドとして解釈され、ファイルを削除してしまう事故が起きやすいです。

特に Python などで rm = [0] * 100 と書いている行を bash などのシェルに貼り付けた場合、 ディレクトリ内の全ファイルが削除されてしまいます。
* が全ファイルを表すためです。rm * と同じ結果になります。

「消えたかどうかのフラグ」などでつい上記の変数名を使いたくなることがあるかもしれませんが、避けるのが安全です。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?