Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
can';找不到错误,简单但卡住了_C - Fatal编程技术网

can';找不到错误,简单但卡住了

can';找不到错误,简单但卡住了,c,C,有一个奇怪的问题,我已经看了一百万遍了,但我觉得我的脑袋有点乱,只是一个简单的问题,我在head First C书中遵循,当我试图编译和运行时,得到一个标记或“(“{”之前的必需错误。找不到哪里 我想是的,有人告诉我问题出在哪里吗?我知道这很简单,但我的大脑在搞乱我 代码: #include <stdio.h> #include <stdlib.h> void go_south_east(int lat, int lon); { lat = lat - 1;

有一个奇怪的问题,我已经看了一百万遍了,但我觉得我的脑袋有点乱,只是一个简单的问题,我在head First C书中遵循,当我试图编译和运行时,得到一个标记或“(“{”之前的必需错误。找不到哪里

我想是的,有人告诉我问题出在哪里吗?我知道这很简单,但我的大脑在搞乱我

代码:

#include <stdio.h>
#include <stdlib.h>

void go_south_east(int lat, int lon);
{
    lat = lat - 1;
    lon = lon + 1;
}

int main()
{
    int latitude = 32;
    int longitude = -64;
    go_south_east(latitude, longitude);
    printf("Avast! Now at: [%i, %i]\n", latitude, longitude);

return 0;
}
#包括
#包括
南部和东部(内陆和内陆);
{
lat=lat-1;
lon=lon+1;
}
int main()
{
国际纬度=32;
int经度=-64;
往南往东(纬度、经度);
printf(“Avast!现在位于:[%i,%i]\n”,纬度,经度);
返回0;
}
是的,我知道有一个问题,它不会指向正确的位置,并且一旦运行,值也不会改变,但这只是想法,学习指针,这是第一个任务,但我无法编译这篇文章:(


谢谢你们,你们是最棒的!

你们还有额外的

void go_south_east(int lat, int lon);
                                    ^ remove
应该是:

void go_south_east(int lat, int lon)
{                         //        ^ removed
    lat = lat - 1;
    lon = lon + 1;
}

C仍然是一种传递值语言。如果您希望函数能够修改其参数,则必须向其传递指针:

void foo(int *p)
{
    ++*p;
}
(还要注意
++
增量运算符的使用,这样写增量和减量是惯用的,
lat=lat-1;
被认为是多余的冗长。)


(当然,更不用说语法错误,它甚至不允许您的代码进行编译…

代码中有两个问题:

(一) 南部和东部(内陆和内陆); 从末尾的行上方删除分号

2) 您只将变量值传递给函数


对代码中存在的函数中的变量值所做的更改不会反映在调用函数中

我一直希望这样(常见)编译器更清楚地解释了错误。@Jim我一直希望人们阅读错误消息并查看行号…读了我说的话吗?哈哈。我知道这段代码的改进,这就是我正在阅读的内容,我只是想知道我在这段代码中犯了什么错误,这只是本文的第一个练习“我是新来的:)@spergalerger我已经习惯了这些错误:)我不太清楚你的问题的某些部分是什么意思,不管怎样。:@spergalerger(但请随意接受格里耶什的回答,因为他首先发现了你的实际问题。)