Clion下如果有多个main函数,编译时会报错“`main'被多次定义”,如下图:
出现这种情况是因为我们在CMakeLists.txt没有进行设置可以同时存在多个main函数。
我在Clion下建立了两个.c文件,分别为1.1.c;main.c。CMakeLists.txt中默认显示是这样:
进行修改:
这里解释一下:add_executable是用于添加可执行程序的源码的,PFL1表示项目名,后面跟的是源文件,多个源文件空格隔开,多个可执行文件的项目名不能重复,我这里另一个可执行文件是PFL2,不能和PFL1同名。
Clion根据CMakeLists.txt文件生成Makefile,Makefile可以理解为代码构建需要的描述文件,cmake命令使用这个Makefile文件构建项目
编译的时候选择一下:
文章参考:
https://blog.csdn.net/qq_33033367/article/details/80303923
思考总结:
之前在公司写C/C++项目用Clion写的,一直被Clion无法共存多个main函数,无法编译而烦恼。却没有想过搜索一下,有没有现成的解决方案。
总结一下,
问题的准确提出很重要
,比如
先知道怎么描述我遇到的问题
:“Clion无法共存多个main函数,无法编译”,由于这个是IDEA使用问题,自己没什么思路,这个时候应该首先想到的是去搜索引擎搜,如果搜不到满意的答案,说明提问姿势(问题描述)有问题,庆幸我这里直接得到答案。
Clion下如果有多个main函数,编译时会报错“`main'被多次定义”,如下图:出现这种情况是因为我们在CMakeLists.txt没有进行设置可以同时存在多个main函数。我在Clion下建立了两个.c文件,分别为1.1.c;main.c。CMakeLists.txt中默认显示是这样:进行修改: 这里解释一下:add_executable是用于添加可执行程序的...
全网最靠谱的计算工作时间
函数
(自动剔除非工作时间),自己网上找的各种出错后来逼得没办法自己写了一个。
可以计算工作时间的
函数
,自动去除非工作时间。还可以微调
函数
修改作息时间。自动去除节假日中午休息时间和下午下班后上午上班前的时间。绝对物有所值,并且已经经过验证正在使用。赚点辛苦豆子想买自己需要的资源。后面计划更新
函数
可以根据值班表自动把晚上加班的或者休息日加班的时间都算进去。
使用方法简单
zky_work_minute_sum(开始时间, 结束时间, 月份) -- 时间可以点到顺序写自动识别
zky_work_minute_sum(2021-05-11 15:28:49, 2021-05-11 15:28:57, 5)
正常情况下,
clion
创建c++项目时只能有一个
main
函数
。如果出现多个,
clion
就会出现编译错误,最简单的解决方法是修改配置文件。
修改配置文件CMakeLists.txt ,将下面代码:
add_executable(test_
clion
main
.cpp)
# 遍历项目根目录下所有的 .cpp 文件
file (GLOB_RECURSE files *.cpp)
foreach (file ${files})
string(REGEX REPLACE ".+/(.+).
file(GLOB_RECURSE files *.c)
foreach (file ${files})
string(REGEX REPLACE ".+/(.+)\\..*" "\\1" exe ${file})
# 源文件名称中包含[_.c]的文件
if (${file} MATCHES _
记得大一学C语言的时候,我们就知道一个工程中只能有一个
main
函数
最近下载了
CLion
,我很懒,想在一个工程下建好几个c文件,里面都有
main
函数
,结果编译运行的时候不通过
这才想起来,无论有多少复杂的c文件和
函数
,绝对有且只有一个
main
函数
记得把其他带有
main
函数
的文件都删掉之后,将CMakeLists.txt 中对应的文件名也删掉
在最初使用
Clion
这款软件做C++开发时,有时会遇到在同一个Project中有多个cpp文件,而每个cpp文件又都有
main
函数
,因此运行时会出现multiple definition of `
main
'这样的错误。
一,问题重现
二,解决问题
这是因为一个编译链接生成的EXE文件只能有一个
main
函数
,为了能使多个带
main
函数
的cpp文件能在同一project中运行,我们需要在CM...
Clion
中multiple definition of `
main
’; CMakeFiles\untitled1.dir/objects.a(
main
.cpp.obj)????:/untitled1/
main
.cpp:3: first defined here报错解决办法:
collect2.exe: error: ld returned 1 exit status:
如果在一个项目种有两个mian方法,则需要修改其它的c++程序的
main
方法名(任意改),保留需要运行的程序的mian
其在字母表中的位置(A=1,B=2,……,Z=26),多个字符串的字母值之和为该系列字符串的字母值。例如, COLIN 的字母值为 3 + 15 + 12 + 9 + 14 = 53,如果一共有两个字符串,分别为 COLIN 和 BOB,那么该系列字符串的字母值为 53 + 28 = 81。请问如何实现该问题的计算?
这是一个编程问题,可以使用编程语言实现。可以先将每个字符串转换为字母值的和,然后将所有字符串的字母值之和相加即可得到该系列字符串的字母值。具体的实现方式可以根据不同的编程语言选择不同的方法。