小编whi*_*olf的帖子

在struct定义中预期''before'='标记

我有一个struct案例来建模一个简单的信号量,代码如下

struct semaphore{
    int count = 1;
    struct PCB *Sem_Queue;
};
Run Code Online (Sandbox Code Playgroud)

当我尝试编译时,我得到了错误

在'='之前预期':',','等标记int count = 1;

任何人都可以向我指出为什么会出现这种错误?

c struct

3
推荐指数
1
解决办法
525
查看次数

从Celsius到Fahrenheit的转换返回0.00

我正在编写一个C程序,将Celsius转换为Fahrenheit,反之亦然.当我从F转换为C时,它运行得很好.但是当我尝试从C转换为FI时,总是得到0.00作为我的返回值.这是我的代码.

int main (void)
{

int fahrenheit;
double celsius;
int convert;

while (celsius != 0 || fahrenheit != 32) {
    printf("Type 1 if you would like to convert to celsius.\n");
    printf("Type 2 if you would like to convert to fahrenheit.\n");
    scanf("%d", &convert);
    printf("\n");

    if(convert == 1){
        printf("Enter the temperature in degrees fahrenheit:\n");
        scanf("%d", &fahrenheit);
        celsius = (5.0/9.0) * (fahrenheit-32);
        printf ("The converted temperature is %.2f\n", celsius);
        printf ("\n");
        }
    else{
        printf("Enter the temperature in degrees celsius:\n");
        scanf("%d", &celsius);
        fahrenheit = …
Run Code Online (Sandbox Code Playgroud)

c

1
推荐指数
1
解决办法
290
查看次数

Vector3 转纬度经度

我正在尝试对球体上的一个点进行光线投射,然后将该点转换为其适当的纬度和经度。我遇到了这个问题,它与我在堆栈交换上所做的事情几乎完全相关

球体上的 3D 坐标为纬度和经度

使用这个函数

public static LatLon FromVector3(Vector3 position, float sphereRadius)
    {
        float lat = (float)Math.Acos(position.Y / sphereRadius); //theta
        float lon = (float)Math.Atan(position.X / position.Z); //phi
        return new LatLon(lat, lon);
    }
Run Code Online (Sandbox Code Playgroud)

但是,该函数始终返回 0 到 3(纬度)和 -1 到 1(经度)范围内的值。

我使用的程序是 Unity,有谁知道为什么我可能会得到这些不正确的值?我将光线投射命中世界矢量和球体半径作为参数传递,并且球体以世界 0,0,0 为中心。

更新代码

public static Vector2 GetLatLonFromVector3 (Vector3 position, float sphereRadius){
        float lat = (float)Mathf.Acos(position.y / sphereRadius); //theta
        float lon = (float)Mathf.Atan2(position.x, position.z); //phi
        lat *= Mathf.Rad2Deg;
        lon *= Mathf.Rad2Deg;
        return new Vector2(lat, lon);
    }
Run Code Online (Sandbox Code Playgroud)

我现在遇到的问题是它们所在的象限没有正确反映这些值。

geometry latitude-longitude unity-game-engine

1
推荐指数
1
解决办法
2847
查看次数

如何将Option <char>附加到字符串?

我正在使用一个match语句,.chars().next()并且如果它匹配某个字符,则想要将字符附加到字符串.我想这样做

keyword.push(line.chars().next()) 
Run Code Online (Sandbox Code Playgroud)

但得到一个错误:

expected type 'char' found type Option<<char>>
Run Code Online (Sandbox Code Playgroud)

我该如何将其附加到我的字符串上?

string char optional rust

0
推荐指数
1
解决办法
140
查看次数