Я использую Clion, который использует CMake, который использует CMakeLists.txt, который выглядит следующим образом:Документация для CMake -std параметры
cmake_minimum_required(VERSION 3.3)
project(Thesis)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c99")
set(SOURCE_FILES main.cpp graph.h graph.c shared.h shared.c)
add_executable(Thesis ${SOURCE_FILES})
Я был поиск и поиск объяснений по -std=c99
. Значение по умолчанию было -std=c++11
, и я изменил его, потому что я пишу программу C, по интуиции, я не видел этого ключевого слова нигде, я просто догадался. Однако я не совсем понимаю, что делает этот параметр, и я хочу. Какие другие параметры могут потребоваться?
Где именно эта документация?
'-std' является ** компилятор ** флаг, а не CMake один. '-std = c99' означает, что компилятор должен использовать [стандарт C99] (https://en.wikipedia.org/wiki/C99). – Tsyvarev
, и если вы захотите установить CMake 3.3 как минимум, лучше использовать ['CMAKE_C_STANDARD'] (https://cmake.org/cmake/help/v3.3/variable/CMAKE_C_STANDARD.html) и, возможно, [' CMAKE_C_STANDARD_REQUIRED'] (https://cmake.org/cmake/help/v3.3/variable/CMAKE_C_STANDARD_REQUIRED.html) ... или установить соответствующие целевые свойства. – zaufi