首页 > 系统相关 >mingw64 + nvim + coc.nvim + nvim-dap : C++ windows - 03

mingw64 + nvim + coc.nvim + nvim-dap : C++ windows - 03

时间:2023-04-02 12:56:32浏览次数:59  
标签:03 llvm x86 gnu windows w64 mingw 64 nvim

3.1 ccls

https://github.com/MaskRay/ccls/wiki/Build

在msys中:

pacman -S --noconfirm mingw-w64-x86_64-clang mingw-w64-x86_64-clang-tools-extra mingw64/mingw-w64-x86_64-polly mingw-w64-x86_64-cmake mingw-w64-x86_64-jq mingw-w64-x86_64-ninja mingw-w64-x86_64-ncurses mingw-w64-x86_64-rapidjson mingw-w64-x86_64-clang-analyzer mingw-w64-x86_64-mlir

pacman -S --noconfirm cmake ninja clang

cd ccls
cmake -H. -BRelease -G Ninja -DCMAKE_CXX_FLAGS=-D__STDC_FORMAT_MACROS
ninja -C Release

3.1.1 依赖

pacman -S --noconfirm mingw-w64-x86_64-clang mingw-w64-x86_64-clang-tools-extra mingw64/mingw-w64-x86_64-polly mingw-w64-x86_64-cmake mingw-w64-x86_64-jq mingw-w64-x86_64-ninja mingw-w64-x86_64-ncurses mingw-w64-x86_64-rapidjson mingw-w64-x86_64-clang-analyzer mingw-w64-x86_64-mlir
$ pacman -S --noconfirm mingw-w64-x86_64-clang mingw-w64-x86_64-clang-tools-extra mingw64/mingw-w64-x86_64-polly mingw-w64-x86_64-cmake mingw-w64-x86_64-jq mingw-w64-x86_64-ninja mingw-w64-x86_64-ncurses mingw-w64-x86_64-rapidjson mingw-w64-x86_64-clang-analyzer mingw-w64-x86_64-mlir
warning: mingw-w64-x86_64-cmake-3.26.2-1 is up to date -- reinstalling
warning: mingw-w64-x86_64-ninja-1.11.1-3 is up to date -- reinstalling
warning: mingw-w64-x86_64-ncurses-6.4.20230211-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...

Packages (13) mingw-w64-x86_64-libxml2-2.10.3-1  mingw-w64-x86_64-llvm-16.0.0-1
              mingw-w64-x86_64-oniguruma-6.9.8-1  mingw-w64-x86_64-clang-16.0.0-1
              mingw-w64-x86_64-clang-analyzer-16.0.0-1  mingw-w64-x86_64-clang-tools-extra-16.0.0-1
              mingw-w64-x86_64-cmake-3.26.2-1  mingw-w64-x86_64-jq-1.6-5
              mingw-w64-x86_64-mlir-16.0.0-1  mingw-w64-x86_64-ncurses-6.4.20230211-1
              mingw-w64-x86_64-ninja-1.11.1-3  mingw-w64-x86_64-polly-16.0.0-1
              mingw-w64-x86_64-rapidjson-1.1.0-5

Total Download Size:    248.58 MiB
Total Installed Size:  1912.06 MiB
Net Upgrade Size:      1807.61 MiB

:: Proceed with installation? [Y/n]
:: Retrieving packages...
 mingw-w64-x86_64-polly-16....     2.3 MiB   866 KiB/s 00:03 [###############################] 100%
 mingw-w64-x86_64-clang-too...    13.7 MiB  3.64 MiB/s 00:04 [###############################] 100%
 mingw-w64-x86_64-rapidjson...  1237.0 KiB   233 KiB/s 00:05 [###############################] 100%
 mingw-w64-x86_64-libxml2-2...  1030.8 KiB   193 KiB/s 00:05 [###############################] 100%
 mingw-w64-x86_64-jq-1.6-5-any   275.4 KiB  93.3 KiB/s 00:03 [###############################] 100%
 mingw-w64-x86_64-clang-16....    50.0 MiB  3.84 MiB/s 00:13 [###############################] 100%
 mingw-w64-x86_64-oniguruma...   223.2 KiB  88.7 KiB/s 00:03 [###############################] 100%
 mingw-w64-x86_64-llvm-16.0...    88.6 MiB  6.42 MiB/s 00:14 [###############################] 100%
 mingw-w64-x86_64-clang-ana...   104.3 KiB  81.4 KiB/s 00:01 [###############################] 100%
 mingw-w64-x86_64-mlir-16.0...    91.3 MiB  4.81 MiB/s 00:19 [###############################] 100%
 Total (10/10)                   248.6 MiB  13.1 MiB/s 00:19 [###############################] 100%
(13/13) checking keys in keyring                             [###############################] 100%
(13/13) checking package integrity                           [###############################] 100%
(13/13) loading package files                                [###############################] 100%
(13/13) checking for file conflicts                          [###############################] 100%
(13/13) checking available disk space                        [###############################] 100%
:: Processing package changes...
( 1/13) installing mingw-w64-x86_64-libxml2                  [###############################] 100%
Optional dependencies for mingw-w64-x86_64-libxml2
    mingw-w64-x86_64-python: Python bindings [installed]
( 2/13) installing mingw-w64-x86_64-llvm                     [###############################] 100%
( 3/13) installing mingw-w64-x86_64-clang                    [###############################] 100%
( 4/13) installing mingw-w64-x86_64-clang-tools-extra        [###############################] 100%
( 5/13) installing mingw-w64-x86_64-polly                    [###############################] 100%
( 6/13) reinstalling mingw-w64-x86_64-ninja                  [###############################] 100%
( 7/13) reinstalling mingw-w64-x86_64-cmake                  [###############################] 100%
( 8/13) installing mingw-w64-x86_64-oniguruma                [###############################] 100%
( 9/13) installing mingw-w64-x86_64-jq                       [###############################] 100%
(10/13) reinstalling mingw-w64-x86_64-ncurses                [###############################] 100%
(11/13) installing mingw-w64-x86_64-rapidjson                [###############################] 100%
(12/13) installing mingw-w64-x86_64-clang-analyzer           [###############################] 100%
(13/13) installing mingw-w64-x86_64-mlir                     [###############################] 100%

3.1.2 build

在msys中:

cd /c/gnu/tool/ccls

cmake -H. -BRelease -G Ninja -DCMAKE_CXX_FLAGS=-D__STDC_FORMAT_MACROS

ninja -C Release
$ cmake -H. -BRelease -G Ninja -DCMAKE_CXX_FLAGS=-D__STDC_FORMAT_MACROS
-- The CXX compiler identification is GNU 12.2.0
-- The C compiler identification is GNU 12.2.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/gnu/msys64/mingw64/bin/c++.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/gnu/msys64/mingw64/bin/cc.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Setting build type to 'Release' as none was specified.
-- Performing Test HAVE_FFI_CALL
-- Performing Test HAVE_FFI_CALL - Success
-- Found FFI: C:/gnu/msys64/mingw64/lib/libffi.dll.a
-- Found ZLIB: C:/gnu/msys64/mingw64/lib/libz.dll.a (found version "1.2.13")
-- Found zstd: C:/gnu/msys64/mingw64/lib/libzstd.dll.a
-- Found LibXml2: C:/gnu/msys64/mingw64/lib/libxml2.dll.a (found version "2.10.3")
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- RapidJSON found. Headers: /mingw64/include
-- Configuring done (1.6s)
-- Generating done (0.0s)
-- Build files have been written to: C:/gnu/tool/ccls/Release
$ ninja -C Release
ninja: Entering directory `Release'
[14/43] Building CXX object CMakeFiles/ccls.dir/src/query.cc.obj
In file included from C:/gnu/tool/ccls/src/indexer.hh:6,
                 from C:/gnu/tool/ccls/src/query.hh:6,
                 from C:/gnu/tool/ccls/src/query.cc:4:
In constructor 'ccls::SymbolInformation::SymbolInformation(ccls::SymbolInformation&&)',
    inlined from 'constexpr std::_Optional_payload_base<_Tp>::_Storage<_Up, false>::_Storage(std::in
_place_t, _Args&& ...) [with _Args = {ccls::SymbolInformation}; _Up = ccls::SymbolInformation; _Tp =
 ccls::SymbolInformation]' at C:/gnu/msys64/mingw64/include/c++/12.2.0/optional:244:8,
    inlined from 'constexpr std::_Optional_payload_base<_Tp>::_Optional_payload_base(std::in_place_t
, _Args&& ...) [with _Args = {ccls::SymbolInformation}; _Tp = ccls::SymbolInformation]' at C:/gnu/ms
ys64/mingw64/include/c++/12.2.0/optional:126:4,
    inlined from 'constexpr std::_Optional_payload<ccls::SymbolInformation, true, false, false>::_Op
tional_payload(std::in_place_t, _Args&& ...) [with _Args = {ccls::SymbolInformation}][inherited from
 std::_Optional_payload_base<ccls::SymbolInformation>]' at C:/gnu/msys64/mingw64/include/c++/12.2.0/
optional:397:42,
    inlined from 'constexpr std::_Optional_payload<ccls::SymbolInformation, false, false, false>::_O
ptional_payload(std::in_place_t, _Args&& ...) [with _Args = {ccls::SymbolInformation}][inherited fro
m std::_Optional_payload_base<ccls::SymbolInformation>]' at C:/gnu/msys64/mingw64/include/c++/12.2.0
/optional:431:57,
    inlined from 'constexpr std::_Optional_base<_Tp, <anonymous>, <anonymous> >::_Optional_base(std:
:in_place_t, _Args&& ...) [with _Args = {ccls::SymbolInformation}; typename std::enable_if<is_constr
uctible_v<_Tp, _Args ...>, bool>::type <anonymous> = false; _Tp = ccls::SymbolInformation; bool <ano
nymous> = false; bool <anonymous> = false]' at C:/gnu/msys64/mingw64/include/c++/12.2.0/optional:521
:4,
    inlined from 'constexpr std::optional<_Tp>::optional(_Up&&) [with _Up = ccls::SymbolInformation;
 typename std::enable_if<__and_v<std::__not_<std::is_same<std::optional<_Tp>, typename std::remove_c
v<typename std::remove_reference<_Up>::type>::type> >, std::__not_<std::is_same<std::in_place_t, typ
ename std::remove_cv<typename std::remove_reference<_Up>::type>::type> >, std::is_constructible<_Tp,
 _Up>, std::is_convertible<_Up, _Tp> >, bool>::type <anonymous> = true; _Tp = ccls::SymbolInformatio
n]' at C:/gnu/msys64/mingw64/include/c++/12.2.0/optional:749:47,
    inlined from 'std::optional<ccls::SymbolInformation> ccls::getSymbolInfo(DB*, SymbolIdx, bool)'
at C:/gnu/tool/ccls/src/query.cc:779:12:
C:/gnu/tool/ccls/src/lsp.hh:179:8: warning: 'info.ccls::SymbolInformation::kind' may be used uniniti
alized [-Wmaybe-uninitialized]
  179 | struct SymbolInformation {
      |        ^~~~~~~~~~~~~~~~~
C:/gnu/tool/ccls/src/query.cc: In function 'std::optional<ccls::SymbolInformation> ccls::getSymbolIn
fo(DB*, SymbolIdx, bool)':
C:/gnu/tool/ccls/src/query.cc:770:23: note: 'info' declared here
  770 |     SymbolInformation info;
      |                       ^~~~
[17/43] Building CXX object CMakeFiles/ccls.dir/src/project.cc.obj
In file included from C:/gnu/msys64/mingw64/include/clang/Basic/FileManager.h:21,
                 from C:/gnu/tool/ccls/src/clang_tu.hh:8,
                 from C:/gnu/tool/ccls/src/project.cc:6:
In member function 'unsigned int llvm::SmallDenseMap<KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT>
::getNumBuckets() const [with KeyT = unsigned int; ValueT = int; unsigned int InlineBuckets = 4; Key
InfoT = llvm::DenseMapInfo<unsigned int>; BucketT = llvm::detail::DenseMapPair<unsigned int, int>]',
    inlined from 'unsigned int llvm::DenseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::getNum
Buckets() const [with DerivedT = llvm::SmallDenseMap<unsigned int, int>; KeyT = unsigned int; ValueT
 = int; KeyInfoT = llvm::DenseMapInfo<unsigned int>; BucketT = llvm::detail::DenseMapPair<unsigned i
nt, int>]' at C:/gnu/msys64/mingw64/include/llvm/ADT/DenseMap.h:525:62,
    inlined from 'BucketT* llvm::DenseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::getBuckets
End() [with DerivedT = llvm::SmallDenseMap<unsigned int, int>; KeyT = unsigned int; ValueT = int; Ke
yInfoT = llvm::DenseMapInfo<unsigned int>; BucketT = llvm::detail::DenseMapPair<unsigned int, int>]'
 at C:/gnu/msys64/mingw64/include/llvm/ADT/DenseMap.h:529:40,
    inlined from 'void llvm::DenseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::initEmpty() [w
ith DerivedT = llvm::SmallDenseMap<unsigned int, int>; KeyT = unsigned int; ValueT = int; KeyInfoT =
 llvm::DenseMapInfo<unsigned int>; BucketT = llvm::detail::DenseMapPair<unsigned int, int>]' at C:/g
nu/msys64/mingw64/include/llvm/ADT/DenseMap.h:380:55,
    inlined from 'void llvm::DenseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::moveFromOldBuc
kets(BucketT*, BucketT*) [with DerivedT = llvm::SmallDenseMap<unsigned int, int>; KeyT = unsigned in
t; ValueT = int; KeyInfoT = llvm::DenseMapInfo<unsigned int>; BucketT = llvm::detail::DenseMapPair<u
nsigned int, int>]' at C:/gnu/msys64/mingw64/include/llvm/ADT/DenseMap.h:396:14,
    inlined from 'void llvm::SmallDenseMap<KeyT, ValueT, InlineBuckets, KeyInfoT, BucketT>::grow(uns
igned int) [with KeyT = unsigned int; ValueT = int; unsigned int InlineBuckets = 4; KeyInfoT = llvm:
:DenseMapInfo<unsigned int>; BucketT = llvm::detail::DenseMapPair<unsigned int, int>]' at C:/gnu/msy
s64/mingw64/include/llvm/ADT/DenseMap.h:1077:31,
    inlined from 'void llvm::DenseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::grow(unsigned
int) [with DerivedT = llvm::SmallDenseMap<unsigned int, int>; KeyT = unsigned int; ValueT = int; Key
InfoT = llvm::DenseMapInfo<unsigned int>; BucketT = llvm::detail::DenseMapPair<unsigned int, int>]'
at C:/gnu/msys64/mingw64/include/llvm/ADT/DenseMap.h:537:40,
    inlined from 'BucketT* llvm::DenseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::InsertInto
BucketImpl(const KeyT&, const LookupKeyT&, BucketT*) [with LookupKeyT = unsigned int; DerivedT = llv
m::SmallDenseMap<unsigned int, int>; KeyT = unsigned int; ValueT = int; KeyInfoT = llvm::DenseMapInf
o<unsigned int>; BucketT = llvm::detail::DenseMapPair<unsigned int, int>]' at C:/gnu/msys64/mingw64/
include/llvm/ADT/DenseMap.h:586:17,
    inlined from 'BucketT* llvm::DenseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::InsertInto
Bucket(BucketT*, KeyArg&&, ValueArgs&& ...) [with KeyArg = const unsigned int&; ValueArgs = {}; Deri
vedT = llvm::SmallDenseMap<unsigned int, int>; KeyT = unsigned int; ValueT = int; KeyInfoT = llvm::D
enseMapInfo<unsigned int>; BucketT = llvm::detail::DenseMapPair<unsigned int, int>]' at C:/gnu/msys6
4/mingw64/include/llvm/ADT/DenseMap.h:547:37,
    inlined from 'llvm::DenseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::value_type& llvm::D
enseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::FindAndConstruct(const KeyT&) [with DerivedT
 = llvm::SmallDenseMap<unsigned int, int>; KeyT = unsigned int; ValueT = int; KeyInfoT = llvm::Dense
MapInfo<unsigned int>; BucketT = llvm::detail::DenseMapPair<unsigned int, int>]' at C:/gnu/msys64/mi
ngw64/include/llvm/ADT/DenseMap.h:326:29,
    inlined from 'ValueT& llvm::DenseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::operator[](
const KeyT&) [with DerivedT = llvm::SmallDenseMap<unsigned int, int>; KeyT = unsigned int; ValueT =
int; KeyInfoT = llvm::DenseMapInfo<unsigned int>; BucketT = llvm::detail::DenseMapPair<unsigned int,
 int>]' at C:/gnu/msys64/mingw64/include/llvm/ADT/DenseMap.h:330:28,
    inlined from 'int ccls::{anonymous}::computeGuessScore(std::string_view, std::string_view)' at C
:/gnu/tool/ccls/src/project.cc:322:12,
    inlined from 'ccls::Project::Entry ccls::Project::findEntry(const std::string&, bool, bool)' at
C:/gnu/tool/ccls/src/project.cc:553:44:
C:/gnu/msys64/mingw64/include/llvm/ADT/DenseMap.h:1170:18: warning: '*(const llvm::SmallDenseMap<uns
igned int, int, 4, llvm::DenseMapInfo<unsigned int, void>, llvm::detail::DenseMapPair<unsigned int,
int> >::LargeRep*)((char*)&m + offsetof(llvm::SmallDenseMap<unsigned int, int, 4, llvm::DenseMapInfo
<unsigned int, void>, llvm::detail::DenseMapPair<unsigned int, int> >,llvm::SmallDenseMap<unsigned i
nt, int, 4, llvm::DenseMapInfo<unsigned int, void>, llvm::detail::DenseMapPair<unsigned int, int> >:
:storage.llvm::AlignedCharArrayUnion<llvm::detail::DenseMapPair<unsigned int, int>[4], llvm::SmallDe
nseMap<unsigned int, int, 4, llvm::DenseMapInfo<unsigned int, void>, llvm::detail::DenseMapPair<unsi
gned int, int> >::LargeRep>::buffer[0])).llvm::SmallDenseMap<unsigned int, int>::LargeRep::NumBucket
s' may be used uninitialized [-Wmaybe-uninitialized]
 1170 |     return Small ? InlineBuckets : getLargeRep()->NumBuckets;
      |            ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:/gnu/tool/ccls/src/project.cc: In member function 'ccls::Project::Entry ccls::Project::findEntry(c
onst std::string&, bool, bool)':
C:/gnu/tool/ccls/src/project.cc:317:38: note: 'm' declared here
  317 |   llvm::SmallDenseMap<unsigned, int> m;
      |                                      ^
[29/43] Building CXX object CMakeFiles/ccls.dir/src/messages/textDocument_code.cc.obj
In file included from C:/gnu/msys64/mingw64/include/llvm/Support/FormatVariadic.h:34,
                 from C:/gnu/tool/ccls/src/messages/textDocument_code.cc:8:
In static member function 'static size_t llvm::detail::HelperFunctions::consumeNumHexDigits(llvm::St
ringRef&, llvm::HexPrintStyle, size_t)',
    inlined from 'static void llvm::format_provider<T, typename std::enable_if<llvm::detail::use_int
egral_formatter<T>::value, void>::type>::format(const T&, llvm::raw_ostream&, llvm::StringRef) [with
 T = int]' at C:/gnu/msys64/mingw64/include/llvm/Support/FormatProviders.h:135:35,
    inlined from 'void llvm::detail::provider_format_adapter<T>::format(llvm::raw_ostream&, llvm::St
ringRef) [with T = int&]' at C:/gnu/msys64/mingw64/include/llvm/Support/FormatVariadicDetails.h:40:4
5:
C:/gnu/msys64/mingw64/include/llvm/Support/FormatProviders.h:95:27: warning: 'HS' may be used uninit
ialized [-Wmaybe-uninitialized]
   95 |     if (isPrefixedHexStyle(Style))
      |         ~~~~~~~~~~~~~~~~~~^~~~~~~
C:/gnu/msys64/mingw64/include/llvm/Support/FormatProviders.h: In member function 'void llvm::detail:
:provider_format_adapter<T>::format(llvm::raw_ostream&, llvm::StringRef) [with T = int&]':
C:/gnu/msys64/mingw64/include/llvm/Support/FormatProviders.h:132:19: note: 'HS' was declared here
  132 |     HexPrintStyle HS;
      |                   ^~
[43/43] Linking CXX executable ccls.exe

3.1.3

将编译得来的 ccls.exe 放到 C:\gnu\cli

3.2 nvim

https://github.com/neovim/neovim/releases/download/stable/nvim-win64.zip

添加到 windows 系统环境变量 path

C:\gnu\tool\nvim\bin

标签:03,llvm,x86,gnu,windows,w64,mingw,64,nvim
From: https://www.cnblogs.com/Searchor/p/17280265.html

相关文章

  • mingw64 + nvim + coc.nvim + nvim-dap : C++ windows - 04
    4.1init.vim将init.vim放置到下面:echostdpath('config')~\AppData\Local\nvim4.2plughttps://github.com/junegunn/vim-plug将plug.vim放置到下面~\AppData\Local\nvim-data\site\autoload4.3:PlugInstall4.3.1网络问题gitproxy4.3.2process4.3......
  • mingw64 + nvim + coc.nvim + nvim-dap : C++ windows - 05
    PSC:\Users\dev\Desktop\cpp>cd.\build\PSC:\Users\dev\Desktop\cpp\build>cmake..-DCMAKE_BUILD_TYPE=Debug--Buildingfor:Ninja--TheCcompileridentificationisGNU12.2.0--TheCXXcompileridentificationisGNU12.2.0--Detect......
  • 【webpack】TypeError: Cannot read property 'tap' of undefined
    前言项目里使用webpack的代码混淆工具webpack-obfuscator,当打包代码时,出现如下报错:TypeError:Cannotreadproperty'tap'ofundefined原因项目的webpack版是4.x,而webpack-obfuscator的版本是3.x解决方法查阅资料在该https://nodejs7.com/2021/11/27/797.html文......
  • 组会小结20230328
    1、《RobustRGB-DFusionforSaliencyDetection》(1)引入了一种分层注意力(LWA)来自动调整不同层之间的深度图贡献,动态确定每层的具体融合策略。(2)设计了一个三叉戟空间注意力(TSA),通过聚合更广泛的空间上下文特征以解决深度错位问题。 具体步骤:RFnet网络主要由分层注意LWA和......
  • Windows窗口对象
         ......
  • STM32F103的PB3、PB4引脚
    做了一个使用STM32F103RBT6的PCB,将PB3~9分配给了三位一体八段数码管,发现PB3、PB4对应的这两段映硬是不亮,检查寄存器是有值的,由于芯片是从另一块板子上面拆下来的,所以首先怀疑芯片故障,结果换了新的MCU还是同样的效果,于是上网搜索,原来PB3和PB4在系统复位时分别默认为JTag接口的SYS_J......
  • 【THM】Windows Fundamentals 2(Windows基础知识2)-学习
    本文相关的TryHackMe实验房间链接:https://tryhackme.com/room/windowsfundamentals2x0x本文介绍:本文所涉及的内容是Windows基础模块的第2部分,了解有关系统配置、UAC设置、资源监控、Windows注册表等更多信息。简介在WindowsFundamentals1中,我们已经介绍了Windows的桌面......
  • 《Linux基础》03. 运行级别 · 实用指令
    目录1:运行级别2:帮助指令2.1:man2.2:help3:文件目录指令3.1:pwd3.2:ls3.3:cd3.4:mkdir3.5:rmdir3.6:touch3.7:cp3.8:rm3.9:mv3.10:ln4:查看指令4.1:cat4.2:more4.3:less4.4:head4.5:tail4.6:history、!5:>、>>、管道符【|】5.1:>5.2:>>5.3:管道符【|】6:时间日期指令6.1:date6.2:cal7:搜索查找指令7.1:fi......
  • 算法随想Day52【单调栈】| LC503-下一个更大元素Ⅱ、LC42-接雨水
    LC503.下一个更大元素Ⅱ对于“每日温度”,相当于对nums数组,进行了两次遍历。用i%size所得余数作为下标,且循环的圈数为size*2vector<int>nextGreaterElements(vector<int>&nums){intsize=nums.size();vector<int>result(size,-1);vector<int>sta;......
  • 202031607221-王彦润 实验一 软件工程准备—博客园技巧与博客首秀
    1、项目和内容简介项目内容班级博客链接2023年春软件工程本次作业要求链接实验一我的课程学习目标注册博客园和Github账号,学习使用博客园,了解Github的基本操作本次作业在哪些方面帮我实现学习目标1.初步了解博客园软件和Github的基本操作;初步了解学......