Giovanni Dicanio's Blog
Giovanni Dicanio's Programming Corner on the Internet
- Posts
- 91 from 20 Apr 2023 to 12 Oct 2026
- Posting
- monthly (9 in the last year)
- Kind
- personal blog
- Feed
- https://giodicanio.com/feed/
2026 6
- Where to Put [[nodiscard]]: A Silent Trap with MSVC!
- The C++20’s u8/char8_t Backward-Compatibility Fiasco
- What C++ Version Should You Target?
- Why We Should Double-Check the AI Output: Claude Lies (AKA AI Hallucinations)
- Why We Should Double-Check the AI Output: A Bug Which Wasn’t
- How to Declare a C++ Function that Takes a Blob of Memory?
2025 9
- The char-TCHAR-wchar_t Pendulum in Windows API Native C/C++ Programming
- The IsoCpp.org Process for Suggesting Articles Is Broken and Should Be Fixed
- Finding the Next Unicode Code Point in Strings: UTF-8 vs. UTF-16
- Converting Between Unicode UTF-16 and UTF-8 in Windows C++ Code
- Getting a Descriptive Error Message for a Windows System Error Code
- Axialis Developer Suite 82%-off Discount
- Linus Torvalds and the Supposedly “Garbage Code”
- How to Set the C++ Language Standard Version in VS Code
- VS Code with MS C/C++ Extension: A Confusing UI Design Choice
2024 32
- How To Pass a Custom Struct from C# to a C++ Native DLL?
- How To Fix an Unhandled System.DllNotFoundException in Mixed C++/C# Projects
- C++ Myth-Buster: UTF-8 Is a Simple Drop-in Replacement for ASCII char-based Strings in Existing Code
- Pluralsight Black Friday Deal: 50% Off Individual Plans
- How to Safely Pass a C++ String View as Input to a C-interface API
- Passing C++ STL Strings vs. String Views as Input Parameters at the Windows C API Boundary
- How To Convert Unicode Strings to Lower Case and Upper Case in C++
- C++ WinReg Library Updated with Contains Methods
- Three Pieces of Advice on Using Modern C++ at Win32 API Boundaries
- How to Enumerate the Modules Loaded in a Process
- Comparing STL vs. ATL/MFC String Usage at the Windows API Boundaries
- How to Use ATL/MFC CString at the Windows API Boundaries
- Comparing Different Methods for Accessing Raw Character Buffers in Strings vs. String Views
- Axialis Fluent System 2023 Icons Discount
- Why Don’t You Use String Views (as std::wstring_view) Instead of Passing std::wstring by const&?
- Happy Anniversary: One Year of Blogging
- Embedding (and Extracting) Binary Files like DLLs into an EXE as Resources
- Unicode Conversions with String Views as Input Parameters
- Simplifying Windows Registry Programming with the C++ WinReg Library
- Decoding Windows SDK Types: PSTR and PCSTR
- How Can You Pass STL Strings as PWSTR Parameters at the Windows API Boundaries?
- How Can You Pass STL Strings as PCWSTR Parameters at the Windows API Boundaries?
- Decoding Windows SDK Types: PWSTR
- Decoding Windows SDK Types: PCWSTR
- Pluralsight Limited-time Offer: Save Up to 50% on Individual Plans
- 50 Posts!
- Visual Studio 2019 and [[nodiscard]] in its Default C++14 Mode
- Where to Apply [[nodiscard]]?
- To [[nodiscard]] or Not [[nodiscard]] by Default?
- How to Set VC++ Warning Level 4 in Visual Studio
- How to Access std::vector’s Internal Array
- Subtle C++ Compiler Error with std::optional and the Conditional Operator
2023 44
- 50% Off Gift of Pluralsight
- How to Get the “Size” of a std::vector?
- How to Load CString from Resources
- How to Load std::wstring from Resources
- CString or std::string? That Is The Question (2023 Revisited)
- C++ String Benchmark: STL vs. ATL vs. Custom Pool Allocator
- How to Prevent Integer Overflows in C++?
- Pluralsight’s Black Friday – 50% OFF (11/21-12/5)
- C++ Mystery Revealed: Why Do I Get a Negative Integer When Adding Two Positive Integers?
- How to Make SafeInt Compatible with Windows Platform SDK Headers
- Protecting Your C++ Code Against Integer Overflow Made Easy by SafeInt
- Suggestion Box
- Protecting Your C++ Code Against Unsigned Integer “Overflow”
- Beware of Integer Overflows in Your C++ Code
- Safe Narrowing Conversion Support in the GSL
- Axialis Icons Limited-time Offer
- How to Convert from Japanese EUC (EUC-JP) to Unicode?
- How to Convert Between ATL/MFC’s CString and std::wstring
- Google C++ Style Guide on Unsigned Integers
- Converting Between Unicode UTF-16 CString and UTF-8 std::string
- Beware of Unsafe Conversions from size_t to int
- How Do I Convert Between Japanese Shift JIS and Unicode UTF-8/UTF-16?
- Converting Between Unicode UTF-16 and UTF-8 Using C++ Standard Library’s Strings and Direct Win32 API Calls
- Converting Between Unicode UTF-16 and UTF-8 Using ATL CString and Direct Win32 API Calls
- Converting Between Unicode UTF-16 and UTF-8 Using ATL Helpers
- Pluralsight 60% Off – Limited Time Offer (Until Sep 30th)
- Are wchar_t and std::wstring Really Portable in C++?
- Code Reviewing ChatGPT’s std::map C++ code
- Optimizing C++ Code with O(1) Operations
- Pluralsight 50% Off Sale – Limited Time Offer (6/6-6/12)
- Adventures with C++ string_view: Interop with ATL/MFC CString
- How to Print Unicode Text to the Windows Console in C++
- Introduction to Data Structures and Algorithms in C++
- The Windows Kernel-mode UNICODE_STRING Structure
- Pluralsight 50% Off Sale Extended Until 5/22
- Properly Passing a C++ Standard String as an Input BSTR String Parameter
- The Case of the Two Billion Characters Long String
- Platform-specific Strings: An Introduction to BSTR Strings
- The Case of string_view and the Magic String
- Keeping on Enumerating C++ String Options: The String Views
- How Many Strings Does C++ Have?
- The C++ Small String Optimization
- Pluralsight FREE Week!
- Hello World!