Edited sentence: A local variable of the same name can shield the global variable from access, again leading to harder-to-understand code.Global variables make separating code into reusable libraries more difficult.Since any code anywhere in the program can change the value of the variable at any time, understanding the use of the variable may entail understanding a large portion of the program.The setting of a global variable can create side effects that are hard to locate and predict.The use of global variables makes it more difficult to isolate units of code for purposes of unit testing; thus they can directly contribute to lowering the quality of the code.The use of global variables makes software harder to read and understand.They can lead to problems of naming because a global variable defined in one file may conflict with the same name used for a global variable in another file (thus causing linking to fail)