意外标记“(”附近出现语法错误

2024-04-02

下面是我的代码,它一直告诉我第 10 行导致了这个“意外标记‘(’附近的语法错误”,但我不明白为什么。我正在添加到已经编写的代码中,但它说有的部分错误不是我添加的内容的一部分。所以我对为什么会收到此错误感到非常困惑。此外,我想要一个关于此错误实际含义的良好定义。

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

#include "applanix_data.h"
#include "applanix_pos_out.h"

#define DEGREES2RADIANS  (3.141592654 / 180.0)

int output_group_1(FILE *fp,     /* This is line 10 */
               FILE *fpout,
               unsigned short myyear,
               unsigned short mymonth,
               unsigned short myday,
               double time_sod,
               double double_time_met)
{
struct applanix_data_group1 data1;
struct pospacsbet sbet;

if(fread(&data1,sizeof(struct applanix_data_group1),1,fp)==1)
 {
    sbet.gpstime = time_sod;
    sbet.latitude = data1.latitude * DEGREES2RADIANS;
    sbet.longitude = data1.longitude * DEGREES2RADIANS;
    sbet.altitude = data1.altitude;
    sbet.x_velocity = data1.eVelocity;
    sbet.y_velocity = data1.nVelocity;
    sbet.z_velocity = data1.dVelocity;
    sbet.roll = data1.aircraftRoll * DEGREES2RADIANS;
    sbet.pitch = data1.aircraftPitch * DEGREES2RADIANS;
    sbet.platform_heading = data1.aircraftHeading * DEGREES2RADIANS;
    sbet.wander_angle = data1.aircraftWanderAngle * DEGREES2RADIANS;
    sbet.x_body_acceleration = data1.aircraftTransverseAcceleration;
    sbet.y_body_acceleration = data1.aircraftLongitudinalAcceleration;
    sbet.z_body_acceleration = data1.aircraftDownAcceleration;
    sbet.x_body_angular_rate = data1.aircraftAngularRateAboutDownAxis;
    sbet.y_body_angular_rate = data1.aircraftLongitudinalAcceleration;
    sbet.z_body_angular_rate = data1.aircraftAngularRateAboutDownAxis;

    if(fwrite(&sbet,sizeof(struct pospacsbet),1,fpout)!=1)
      {
         fprintf(stderr,"Error writing POSPAC SBET output!\n");
         exit(-2);
      }

    sbet.latitude1 = sbet.latitude * (180/3.141592654);
    sbet.longitude1 = sbet.longitude * (180/3.14592654);
    sbet.day = sbet.gpstime/86400;
    sbet.time = sbet.gpstime/86400;
    sbet.hour1 = (sbet.time - sbet.day);
    sbet.hour = sbet.hour1*24;
    sbet.time = sbet.hour1*24;
    sbet.minute1 = (sbet.time - sbet.hour);
    sbet.minute = sbet.minute1*60;
    sbet.time = sbet.minute1 * 60;
    sbet.second1 = (sbet.time - sbet.minute);
    sbet.second = sbet.second1*60;


    printf("%12.8f, %12.8f, %6.3f, %i:%i:%4.2f\n",sbet.longitude1,sbet.latitude1,sbet.altitude,sbet.hour, sbet.minute, sbet.second);
    return 0;
 }
 else
  return -1;
}

将OP的评论编辑到问题中:

unix> g++ applanixraw2out.c
unix> ./applanixraw2out.c applanix_raw_20120508.bin > test.txt
./applanixraw2out.c: line 10: syntax error near unexpected token ('

这不是编译器语法错误,而是 shell 错误。

您正在尝试直接执行 C 源代码。系统假设该文件是 shell 脚本。

您需要将其编译为可执行文件,然后运行该可执行文件:

$ gcc applanixraw2out.c -o applanixraw2out
$ ./applanixraw2out [arguments]

在评论中,您说您做了以下事情:

unix> g++ applanixraw2out.c
unix> ./applanixraw2out.c applanix_raw_20120508.bin > test.txt
./applanixraw2out.c: line 10: syntax error near unexpected token ('

The g++命令用于 C++ 代码;你的代码是C,所以你应该使用gcc反而。

您必须指定可执行文件的名称,最常见的是源文件名.c已删除。如果你不这样做,两个g++ and gcc生成一个名为的可执行文件a.out默认情况下(由于历史原因)。使用-o覆盖该默认值的选项。

另外,为了得到该语法错误,您必须执行以下操作:

$ chmod +x applanixraw2out.c

对不应该执行的文件设置执行权限是基本上无害 http://en.wikipedia.org/wiki/Phrases_from_The_Hitchhiker%27s_Guide_to_the_Galaxy#Mostly_Harmless,但应该避免,因为它会使此类错误更难以追踪。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

意外标记“(”附近出现语法错误 的相关文章

随机推荐

  • django 模型中的星期几表示

    我正在构建这个 作业服务器 模型 我想添加一个字段来保存该作业将在一周中的哪几天运行 最终在用户界面中 我希望用户能够拥有一系列可以选择的复选框 每天一个 在我的模式中表示 一周中的几天 数据的最佳方式是什么 class Job model
  • 如何设置Robots.txt或Apache仅在特定时间允许爬虫?

    由于 24 小时内流量分布不均匀 我希望在高峰时段禁止爬虫 在非繁忙时段允许爬虫 有没有一种方法可以实现这一目标 编辑 感谢所有的好建议 这是我们找到的另一个解决方案 2bits com 有一篇关于设置 IPTables 防火墙以限制来自某
  • 更新 appSettings 外部 web.config 中的变量

    我需要更新 Azure TFS 中 web config 中的值 我能够获取连接字符串替换的值 该值是 appSettings 的一部分 为此 我需要启用名为 XML 变量替换的设置 在 IIS Web 部署下 但是 web config
  • 字符显示/搜索 Unicode 字符

    在回答另一个问题时question https stackoverflow com q 18686199 418556关于这些部分 我对系统上可用字体显示的 Unicode 字符可能获得的字形感到好奇 当然 典型的机器上有 65 536 个
  • 无法通过ajax将javascript对象传递给php

    我在 javascript 中创建了一个新数组 我从一个函数向其索引添加值 然后将数组传递给 ajaxCall 函数 如果我尝试将其转换为 json 并通过 ajax 将其发送到 php 文件 但是变量 json 始终为空 我已经阅读了很多
  • 恢复小备份时磁盘空间不足

    我正在尝试从 32MB 备份恢复数据库 我的磁盘上有 6GB 可用空间 当我尝试恢复备份时 它显示磁盘空间不足错误 32MB 的备份怎么可能需要超过 6GB 的磁盘空间 可能是因为备份被压缩 或者因为有一个非常大的日志文件不需要成为备份本身
  • UIScrollView - (bounces = NO) 似乎覆盖 (pagingEnabled = YES)

    我有一个带有分页功能的 UIScrollView 因此带有 UIPageControl 并在页面之间左右拖动 轻拂的典型模型 并且我的工作正常 奇怪的是 当我想摆脱弹跳 这样就看不到左右两侧UI后面的黑色 时 突然分页不再起作用了 换句话说
  • 在 Storyboard 中实现视频视图

    我想构建简单的视频应用程序 可以查看用户添加的 YouTube 链接中的视频 我没有找到 VideoView 我的意思是如果图像视图用于图像 那么 UIView 用于视频 原库中没有执行视频观看功能的对象 但你可以导入MediaPlayer
  • 如何在 Python BaseHTTPRequestHandler 中处理分块编码?

    我有以下简单的 Web 服务器 利用 Pythonhttp module import http server import hashlib class RequestHandler http server BaseHTTPRequestH
  • 为什么选择 XML 而不是属性文件来进行 Log4J 配置?

    是否有任何理由在 Log4J 配置中使用 XML 而不是属性文件 有一个有趣的讨论这篇博客中两者的优点 http www laliluna de log4j tutorial html 以下部分摘自该博客 属性可以由属性文件或 XML 文件
  • fortran 77 到 fortran 90 的转换器软件 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有 fortran 77 编码 但我想转换为 fortran 90 在哪里可以下载转换器软件 这是我帮
  • Pandas json_normalize 因 JSON 中的空值而失败

    我有以下从外部网络服务获得的 json text id 1 name abc address flat 123 city paris street null error null 现在我想从这个 json 创建数据框 当我尝试下面时 fro
  • 无法解析模块ReactNativeEventEmitter

    将 React Native 从 0 29 升级到 0 30 后 我收到此错误消息 我多次删除了node modules 然后再次安装它们 清除了watchman缓存并npm start reset cache 我也在新项目上尝试过使用re
  • 将日期传递给 package.json 脚本

    我有一个正在尝试设置的部署脚本 我正在尝试将名为 DEPLOY DATE 的环境变量设置为等于现在 scripts deploy kubectl set env deploy api DEPLOY DATE date 问题是这只是将 DEP
  • 在linux中找不到syscall_table_32.S文件

    我正在使用linux headers 2 6 32 21虚拟机上的包 我要编写一个新的系统调用 我找到了其他文件来写入系统调用的缩写 但我找不到这个syscall table 32 S in arch x86 kernel 目录 请帮助我如
  • 将日期 yyyyMMdd 转换为 system.datetime 格式[重复]

    这个问题在这里已经有答案了 可能的重复 如何将日期从 yyyyMMdd 格式转换为 mm dd yyyy 格式 https stackoverflow com questions 4712335 how to convert date fr
  • 如何通过点击JButton来添加JPanel?

    我正在尝试创建一个小型 GUI 它有 2 个 JButtons 和 2 个 JPanels 每个 JPanels 上都有一些绘图动画 默认情况下 它必须显示第一个 JPanel 通过单击第二个 JButton 我想看到第二个 JPanel
  • 无法读取未定义的属性“thisCompilation”-react-scripts-ts

    我使用以下说明创建了一个完全空白的新项目 https developer microsoft com en us fabric get started https developer microsoft com en us fabric g
  • 在 Tensorflow 模型中添加低层

    尝试开发一些转移学习算法 我使用一些经过训练的神经网络并添加层 我正在使用 Tensorflow 和 python 在 Tensorflow 中使用现有图似乎很常见 导入图 例如使用元图 然后通过添加节点来设置新的高层 例如 我找到了这段代
  • 意外标记“(”附近出现语法错误

    下面是我的代码 它一直告诉我第 10 行导致了这个 意外标记 附近的语法错误 但我不明白为什么 我正在添加到已经编写的代码中 但它说有的部分错误不是我添加的内容的一部分 所以我对为什么会收到此错误感到非常困惑 此外 我想要一个关于此错误实际