这里只是一个简单的问题:我有一个 char** argv[] 包含我的所有参数...在其中一个参数中,我得到一个以 % 开头的整数
例如:
背景 %2
我真的只想要整数....有没有简单的方法来得到这个?
这是家庭作业,所以如果有人能在正确的方向上刺激我,我愿意做更多的挖掘。
谢谢
这里只是一个简单的问题:我有一个 char** argv[] 包含我的所有参数...在其中一个参数中,我得到一个以 % 开头的整数
例如:
背景 %2
我真的只想要整数....有没有简单的方法来得到这个?
这是家庭作业,所以如果有人能在正确的方向上刺激我,我愿意做更多的挖掘。
谢谢
这是一种使用 c++ 方法的方法:
让我们假设您char*
在列表中有一个char** argv[]
std::string tempString(argv[the one with the %]);
int position = tempString.find_first_of('%');
int = atoi(tempString.substr(position, tempString.size()-position).c_str());
快速说明,第一行将char*
a 转换为 a std::string
,第二行获取 的位置%
,第三行获取数字的子字符串(假设它在 的末尾结束char*
),将其转换回 achar*
并通过它通过atoi
得到int
.
希望这可以帮助。
这是一种使用方法atoi
:
for (int i = 0 ; i != argc ; i++) {
if (argv[i][0] == '%') {
int num = atoi(&argv[i][1]);
printf("Got a number: %d\n", num);
}
}