最简单的C++程序
#include <iostream>
using namespace std;
int main()
{
cout << "hello C++" << endl;
system("pause");
retur
GDB调试器
我们在讲指针时用 GDB 调试段错误。
本篇将详细介绍 gdb 的最常用命令、日志记录、检测点,最后介绍如何用 gdb 调试进程以及用gdb 调试一个开源项目的调试版本 —— glmark2。
gdb介绍
GDB, the GNU Project debugger —— gdb官网
某日二师兄参加XXX科技公司的C++工程师开发岗位第31面:
面试官:什么是锁?有什么作用?
二师兄:在C++中,锁(Lock)是一种同步工具,用于保护共享资源,防止多个线程同时访问,从而避免数据竞争和不一致。
面试官:有哪些锁?
二师兄:从种类上分,可以分为普通锁、读写锁、递归锁等种类。
二师
前几天和一个身在美国的码农聊天,一时对中美两国的程序员差异产生了兴趣,于是就跑去收集整理了国内外近5年的开发者统计数据。这算不上一篇技术文章,但我想,了解国外同行的一些潮流或者趋势,或许对我们有所启发,毕竟根据以往的经验,湾区的风也常常吹到国内。
✎ 数据来源包括StackOverflow、CSD
什么是后缀数组
后缀数组主要是用来处理字符串的,分为两种方法:倍增法以及 DC3,但由于倍增法通俗易懂,码量小,常数小,所以今天这篇文章我就只介绍倍增法(不可能是因为我不会 DC3)
前缀知识
No.1 基数排序
毕竟sort排序需要 (O(nlog n)),所以并不适合后缀数组,我们便想到了 (
前言
阅读此篇前,可先阅读后缀数组
LCP
LCP 就是最长公共前缀,在后缀数组中,(LCP(i,j)) 就代表从 (sa_i) 开始的后缀和从 (sa_j) 开始的后缀的最长公共前缀。
height 的定义
(height[i]=LCP(sa[i],sa[i-1])),即从 (i) 开始的后缀与
某日二师兄参加XXX科技公司的C++工程师开发岗位第31面:
面试官:strcpy函数使用过吧?
二师兄:用过。
面试官:这个函数有什么作用?
二师兄:主要用做字符串复制,将于字符从一个位置复制到另一个位置。
面试官:strncpy函数也使用过吧,和strcpy有何不同?
二师兄:strncpy
前言
网上关于PowerBuilder的资料确实是少之又少。
为了方便,后面我们都用pb 来代替PowerBuilder
说到这不得不来说说自己的pb入坑经历, 自己也不是计算机科班出生。
刚到公司面试,听到pb也是一脸懵逼,这啥东西,从来没听过。
然而,不知不觉已经干了好几年
《老生常谈:值类型 V.S. 引用类型》中花了很大的篇幅介绍ref参数针对值类型和引用类型变量的传递。在C#中,除了方法的ref参数,我们还有很多使用ref关键字传递引用/地址的场景,本篇文章作一个简单的总结。一、参数
二、数组索引
三、方法
四、ref 结构体
五、ref 结构体字段一、参数如果
不知不觉,《C++面试八股文》已经更新30篇了,这是我第一次写技术博客,由于个人能力有限,出现了不少纰漏,在此向各位读者小伙伴们致歉。
为了不误导更多的小伙伴,以后会不定期的出勘误文章,请各位小伙伴留意。
在《C++面试八股文:C++中,设计一个类要注意哪些东西?》一文中,
#include &l
某日二师兄参加XXX科技公司的C++工程师开发岗位第30面:
面试官:什么是空指针?
二师兄:一般我们将等于0/NULL/nullptr的指针称为空指针。空指针不能被解引用,但是可以对空指针取地址。
int* p = nullptr; //空指针
*p = 42; //空指针不可以解引用
in
CSV格式是一种通用的文本文件格式,可在多个应用程序之间共享和使用。相比之下,Excel文件是一种电子表格格式,通常只能在Microsoft Excel中编辑和查看。因此,将Excel文件转换为CSV格式可使数据更方便地在其他应用程序中使用;而将CSV文件转换为Excel格式则有利于在Micros
某日二师兄参加XXX科技公司的C++工程师开发岗位第29面:
面试官:什么是构造函数?
二师兄:构造函数是一种特殊的成员函数,用于创建和初始化类的对象。构造函数的名称与类的名称相同,并且没有返回类型。构造函数在对象被创建时自动调用。
struct Foo
{
Foo(int v):val(
大家好,我是独孤风,一位曾经的港口煤炭工人,目前在某国企任大数据负责人,公众号大数据流动的作者。
虽然告诉自己要平静,但是当接到EMS录取通知书的那一刻,眼眶还是忍不住有些湿润。今年正好是是东北大学的建校100周年,录取通知书还附赠了小礼物。
上一次接到录取通知书还
之前参与一个机票价格计算的项目,为他们设计了基本的处理流程,但是由于整个计算流程相当复杂,而且变化非常频繁,导致日常的修改、维护和升级也变得越来越麻烦,当我后来再接手的时候已经看不懂计算逻辑了。为了解决这个问题,我借鉴了“工作流”的思路,试图将整个计算过程设计成一个工作流。但是我又不想引入一个独立
某日二师兄参加XXX科技公司的C++工程师开发岗位第27面:
面试官:知道std::unordered_set/std::unordered_map吗?
二师兄:知道。两者都是C++11引入的新容器,和std::set和std::map功能类似,key唯一,unordered_map的value
C++标准
1. C++标准简介
The document specifies requirements for implementations of the C++ programming language.
美国国家标准局(American National Standards Institu
一、在MFC中使用多线程,可以通过CWinThread类来实现。下面是一个简单的示例,演示了如何在MFC应用程序中创建和使用多线程:
在你的MFC应用程序中包含头文件 "afxmt.h",该头文件包含了多线程相关的类和函数。
创建一个派生自CWinThread的自定义线程类。示例代码如下:
在笔者上一篇文章《驱动开发:应用DeviceIoContro开发模板》简单为大家介绍了如何使用DeviceIoContro模板快速创建一个驱动开发通信案例,但是该案例过于简单也无法独立加载运行,本章将继续延申这个知识点,通过封装一套标准通用模板来实现驱动通信中的常用传递方式,这其中包括了如何传递字
前言
函数是C语言中的基本构建块之一,它允许我们将代码组织成可重用、模块化的单元。
本文将逐步介绍C语言函数的基础概念、参数传递、返回值、递归以及内联函数和匿名函数。
一、人物简介
第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。
第二位上场的是和我们一起学习的小白程序猿 —— 逍