我在C中遇到这个错误,只是无法弄清楚出了什么问题.以下查询构成了我的代码的一个组成部分,用于在连续迭代中以指数方式递增值.这是我编程的公式:
我已经评论了代码中的错误.
#include <math.h>
#include <iostream>
int main()
{
double maxMeshS = 0;
double minMeshS = 0;
cout << "enter max mesh size (m): ";
cin >>maxMeshS;
cout <<"\nenter min mesh size (m): ";
cin >> minMeshS;
double raise = maxMeshS/minMeshS; //Values used for run maxMeshS = .5
double factor = 1/9; // minMeshS = .005
double b = pow(raise,factor);
cout << "b " << b << endl; // The error happens here when I use above values
// b …Run Code Online (Sandbox Code Playgroud) 我一直在努力解决这个问题已有一段时间了.
复制字符串数组时,如下面的代码:
#include <stdio.h>
int main (int argc, char* argv[])
{
int i = 0;
for (i = 0; i < argc; i++)
{
printf ("%d: %s @ %p \n",i,argv[i],argv[i]);
}
char* states[7];
for (i = 0; i <argc; i++)
{
states[i] = argv[i]; // line 36
printf ( "State no.%d: %s @ %p \n", i ,states[i],&states[i]);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我获得以下输出:
输出:
0:./ ex1 @ 0x7fff651da366
状态no.0:./ ex1 @ 0x7fff651d94d0
输出中的地址不应该与我在使两个指针指向同一地址的代码的第36行相同吗?