Ada*_*m S 2 c string scanf cstring
这是一个非常基本的问题,但我的C非常生疏,我需要复习.我有一个字符串,其格式完全相同:di ###.# ###.# ###.
我想读第一个数字d1,第二个进入d2,第三个进入d3.
int main ()
{
double d1, d2, d3;
char mystring[] = "di 123.4 567.8 901";
//some code that I don't know
return 0;
}
Run Code Online (Sandbox Code Playgroud)
你能帮助我吗?我知道strtod()可以帮助解析数字,但是如何在开头跳过"di"?
Chr*_*per 11
你可以使用sscanf:
sscanf(mystring, "di %lf %lf %lf", &d1, &d2, &d3);
Run Code Online (Sandbox Code Playgroud)
在这一行中,您将给出一个格式字符串(基本上布置您希望数字的位置),然后按顺序提供您希望将结果放入的变量的地址.该&运营商采取任何它被应用到的地址,在这种情况下是你的d1,d2和d3变量.
(提供的引用位于C++站点上,但适用于此功能)
| 归档时间: |
|
| 查看次数: |
1283 次 |
| 最近记录: |