标签: program-entry-point

主要之前和之后的异常处理

是否可以在这些场景中处理异常:

  1. 在进入main()之前从构造函数抛出
  2. 离开main()后从析构函数抛出

c++ program-entry-point exception-handling

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

main()在C/C++中有多少个参数

使用了main多少个参数?main可能有哪些定义变体?

c c++ program-entry-point

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

在没有运行时库的情况下在Linux下编译C++

我最近开始探索生成的代码使用C++运行时库的方式.

大多数情况下我很好奇,但我也想评估开发用C++启动内核所需的最少内容所需的工作量.

所以我开始实现自己的运行时库,但是我遇到了一个小问题.

int main(int argc, char **argv)
{
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

使用以下命令编译它:

$ g ++ -ffreestanding -nostdlib -fno-builtin -fno-rtti -fno-exceptions -c main.cpp

我收到这个警告:

/ usr/bin/ld:警告:找不到条目符号_start; 默认为00000000080480b8

然后,当我尝试执行生成的二进制文件时,我得到一个"分段错误".我试图编译"main.cpp"和ASM文件.

[global _start]
[extern main]

_start:
  call main
Run Code Online (Sandbox Code Playgroud)

手动链接目标文件与"ld",我没有警告,但二进制文件仍然提出"分段错误".

我想我错过了一些东西.例如,系统C库在"__libc_start_main"中执行调用"main"之前和之后可能需要完成的事情.

此外,如果有人对我应该阅读的有关此主题的网站,文档或书籍有任何建议,我将非常感激.

谢谢,

帕特里克

c++ program-entry-point runtime g++

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

大会中的"全球主力"

我遇到了这段代码:

section .text
    global  main    ;must be declared for linker (gcc)
Run Code Online (Sandbox Code Playgroud)

然后在这一行之后有一个名为main的函数:

main:    ;tell linker entry point
Run Code Online (Sandbox Code Playgroud)

但我似乎不明白是什么global main意思,评论似乎没有多大帮助......

我使用此站点作为汇编语言编程的参考.

我可以分析main指的是函数main,但我不明白global关键字的使用...

先感谢您...

assembly program-entry-point global

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

如何在函数内声明全局变量?

我在函数内部创建全局变量时遇到问题,这是一个简单的例子:

int main{
   int global_variable;  //how to make that
}
Run Code Online (Sandbox Code Playgroud)

这正是我想要做的:

int global_variable;
int main{
                   // but I wish to initialize global variable in main function
}
Run Code Online (Sandbox Code Playgroud)

c++ variables program-entry-point loops global

8
推荐指数
3
解决办法
4万
查看次数

Gradle,错误无法找到或加载主类'test.Main'

我在我的一个项目上实现了Gradle .我使用带有gradle插件的Netbeans 8.02.

结构是应该的,源位于jgli/src/main/java/,资源下jgli/src/main/resources/

主类是 jgli/src/main/java/test/Main.java

如果我通过ide运行它,它在Windows 上运行,它在linux 上崩溃.这就是为什么我现在试图通过控制台运行它:

java -jar jgli.jar

但我一直在:

错误无法找到或加载主类'test.Main'

这是我的 build.gradle

apply plugin: 'java'

sourceCompatibility = '1.8'
[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'

// NetBeans will automatically add "run" and "debug" tasks relying on the
// "mainClass" property. You may however define the property prior executing
// tasks by passing a "-PmainClass=<QUALIFIED_CLASS_NAME>" argument.
//
// Note however, that you may define your own "run" and "debug" task if you
// …
Run Code Online (Sandbox Code Playgroud)

java program-entry-point find gradle netbeans-8

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

python __main__ 和 __init__ 正确使用

因为我对 python 比较陌生,所以语言的这个特殊方面对我来说仍然不透明。

因此,假设我的项目包含许多文件,其中包含执行操作的代码和两个“服务”文件:__init__.py__main__.py

__init__.py只有:

if __name__ == "__main__":
    import package.__main__
    __main__.main()
Run Code Online (Sandbox Code Playgroud)

并在__main__.py如下:

import package # ok
import package2 # ok

def main():
    package.myfunc1() # can't find reference to myfunc1
    package2.myfunc2() # can't find reference to myfunc2
Run Code Online (Sandbox Code Playgroud)

所以我的问题是:为什么两个包都可见而里面的函数不可见?我已经从谷歌阅读了一些源代码,但仍然无法发现它和我的代码之间的区别。我正在使用Python 3.5.1

我认为,在该代码__init__将推出__main____main__将推出的我的其余功能。

UPD

好吧,如果我将某人与我的代码混淆,我深表歉意。支持的想法__init__.py是该文件是在添加第一个包时由 IDE 创建的,所以我决定用在第一个 github 条目中找到的代码填充它(我的错,我虽然它可以通过复制粘贴重新使用)。

严格来说,我只需要 python 构造,相当于这个 C 代码:

header.h
void func1(){...} //in code1.c
void func2(){...} //in code2.c
#include "header.h" …
Run Code Online (Sandbox Code Playgroud)

python program-entry-point initialization

8
推荐指数
2
解决办法
2万
查看次数

如何在Flutter / Dart中将参数从命令行传递给main?

您将如何运行命令并使用Flutter / Dart传递一些自定义参数,以便随后可以在main()调用中访问它们,例如:

flutter run -device [my custom arg]
Run Code Online (Sandbox Code Playgroud)

因此,我可以通过以下方式访问它:

void main(List<String> args) {
  print(args.toString());
}
Run Code Online (Sandbox Code Playgroud)

谢谢。

command program-entry-point args dart flutter

8
推荐指数
4
解决办法
914
查看次数

为什么我的 C++ 函数只有放在 main() 之后才不起作用?

我最近学习了 C++ 并决定尝试制作一个函数。但是,我的函数遇到了一个问题func(),即使事先声明,它也只有放在main()函数之前才有效。

如果我把它放在main()函数之后,系统会告诉我“没有匹配的函数可以调用func”。

注意:func2另一方面,即使放在main()函数之前或之后,函数也能工作。

所以这是代码:

#include <stdio.h>
#include <iostream>

void func2();

int func();

int main()
{
  int y=2;

  std :: cout << "Hello World\n" << func(y) << "\n";
  func2();
  return 0;
}

int func(int x)
{
 x *= 2;
 return x;
}

void func2()
{
 std :: cout << "Hello there";
}
Run Code Online (Sandbox Code Playgroud)

c++ program-entry-point function

8
推荐指数
2
解决办法
198
查看次数

SwiftUI - 如何使应用程序不显示默认的 LaunchScreen/SplashScreen?

我正在开发一个 SwiftUI 应用程序,在那里我添加了一个自定义启动屏幕,但现在我的应用程序显示 2 个启动屏幕,一个是空白的(默认的),另一个是我创建的。

如何将设置的应用程序设置为从主视图启动应用程序。

在 swift5 中,在 Storyboard 视图中我们可以在这里设置在此输入图像描述 如何在 swiftUI 中实现同样的功能?

实际上我不想永久删除启动画面,我想在没有任何视频控制器的情况下放置我自己的自定义启动画面显示动画视频......例如播放,暂停......等。

编辑 1:添加 SwiftUI 的相同行为

以下是 SwiftUI 的当前行为:,它没有显示任何可供选择的选项...

在此输入图像描述

编辑 2:添加项目导航器屏幕截图

在此输入图像描述

program-entry-point splash-screen swiftui

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