Thank you very much for your useful information. As you say, it is a subclass llvm::ConstantExpr.
Now I cast value "i32* getelementptr inbounds (%struct.Args* @globalArg, i64 0, i32 2)" to its subclass llvm::Constant and then subclass llvm::ConstantExpr, and then I can access its indices through
for (unsigned i=0; i<constExpr->getNumOperands(); ++i)
v = constExpr->getOperand(i);
However, I have another question. The invoking of getNumOperands() on value "i32* getelementptr inbounds (%struct.Args* @globalArg, i64 0, i32 2)" returns 3, but it returns 1 on value "i32* getelementptr inbounds (%struct.Args* @globalArg, i64 0, i32 0)", and furthermore, through value "i32* getelementptr inbounds (%struct.Args* @globalArg, i64 0, i32 2)" is subclass llvm::Constant, but it is not subclass llvm::ConstantExpr, why?