Skip to content

Commit 1fecdd9

Browse files
TaojunshenTylerMSFTColin Robertsonkylereedmsftweijiechai
authored
10/22/2021 AM Publish (#3853)
* add new classes: ambiguous_local_time & nonexistent_local_time * acrolinx * fix links * finish descriptions * fix more links * smoothing out * proofing * add some better linking * tune description * update descriptions * needed to update local-info-struct.md to reflect changes to descriptions for nonexistent and ambiguous * add chrono functions * rounding out duration links * Add documentation for IntelliSense linter for C++ (#3821) * Add first draft of linter check documentation * WIP overview. Signed-off-by: Kyle Reed <[email protected]> * Update toc. First draft of the linter overview. * Add screenshots, move files, code samples are stand-alone. Signed-off-by: Kyle Reed <[email protected]> * Style and Acrolinx grammar checker pass * Add missing Options cues for checks * Update to use latest option names Co-authored-by: [email protected] <[email protected]> * connecting duration up to it's non-member pieces and doing some general updates * fix links * cleanup * Split out VS2019 content for linter (#3824) * Update working-with-project-properties.md * cleanup * cleanup * cleanup * cleanup * cleanup * cleanup * cleanup * fix function signature * fix line ending * remove duplicate * Address /profile issues per Paddy McD (#3834) * Fixed documentation that destroy dialogs * Update void-cpp for cpp-docs 3441 Reported in MicrosoftDocs/cpp-docs/issues/3441 Clarify kinds of class member where you can't use `void*`. Fix styles. Acrolinx a few things. * More clarity on void pointers to members * zoned_traits (#3831) * add zoned_traits * draft clock_cast and clock_time_conversion * first draft * draft * draft * fix heading * cleanup * add tzdb and tzdb-list * draft * draft * pull examples * draft cleanup * acrolinx * draft cleanup * draft cleanup * incorp tech review * tech review * cleanup * cleanup * acrolinx * fix casing * add example descriptions * wording * last adjustments * wording Co-authored-by: TylerMSFT <[email protected]> * Update 16.1 conformance per J Emmett * Update docs/error-messages/compiler-errors-2/compiler-error-c2666.md * Fix typo in page title * Fix TOC schema before VS2022 changes * Address 3449 typo in /analyze * Address 3462 add C5033 warning * Include link update * Typo * Add TOC entry * Update how-to-marshal-callbacks-and-delegates-by-using-cpp-interop.md typo: underlaying -> underlying * Fix typo in toc for tzdb_list * fix github issue #3469 (#3852) Co-authored-by: TylerMSFT <[email protected]> Co-authored-by: TylerMSFT <[email protected]> Co-authored-by: Colin Robertson <[email protected]> Co-authored-by: Kyle Reed <[email protected]> Co-authored-by: Chai Wei Jie <[email protected]> Co-authored-by: opbld15 <[email protected]> Co-authored-by: PRMerger19 <[email protected]> Co-authored-by: Laura Brenner <[email protected]> Co-authored-by: Courtney Wales <[email protected]> Co-authored-by: Andrea Courtright <[email protected]> Co-authored-by: PRMerger15 <[email protected]> Co-authored-by: opbld16 <[email protected]> Co-authored-by: PRMerger8 <[email protected]> Co-authored-by: Anju Del Moral Gonzalez <[email protected]> Co-authored-by: opbld17 <[email protected]> Co-authored-by: Tyler Whitney <[email protected]> Co-authored-by: Miya Natsuhara <[email protected]> Co-authored-by: Kristine Toliver <[email protected]> Co-authored-by: PRMerger7 <[email protected]> Co-authored-by: Avraham <[email protected]>
1 parent 35271be commit 1fecdd9

File tree

3 files changed

+22
-22
lines changed

3 files changed

+22
-22
lines changed
Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
---
22
description: "Learn more about: _vscprintf_p, _vscprintf_p_l, _vscwprintf_p, _vscwprintf_p_l"
33
title: "_vscprintf_p, _vscprintf_p_l, _vscwprintf_p, _vscwprintf_p_l"
4-
ms.date: "3/9/2021"
4+
ms.date: "10/21/2021"
55
api_name: ["_vscprintf_p_l", "_vscprintf_p", "_vscwprintf_p_l", "_vscwprintf_p"]
66
api_location: ["msvcrt.dll", "msvcr80.dll", "msvcr90.dll", "msvcr100.dll", "msvcr100_clr0400.dll", "msvcr110.dll", "msvcr110_clr0400.dll", "msvcr120.dll", "msvcr120_clr0400.dll", "ucrtbase.dll"]
77
api_type: ["DLLExport"]
88
topic_type: ["apiref"]
99
f1_keywords: ["_vscprintf_p", "_vscprintf_p_l", "vscwprintf_p", "vscprintf_p", "vscwprintf_p_l", "_vscwprintf_p_l", "vscprintf_p_l", "_vscwprintf_p"]
1010
helpviewer_keywords: ["vscprintf_p function", "_vsctprintf_p_l function", "vscwprintf_p_l function", "_vscwprintf_p_l function", "_vscprintf_p function", "vsctprintf_p function", "_vscprintf_p_l function", "_vscwprintf_p function", "vscwprintf_p function", "vsctprintf_p_l function", "_vsctprintf_p function", "vscprintf_p_l function"]
1111
---
12-
# _vscprintf_p, _vscprintf_p_l, _vscwprintf_p, _vscwprintf_p_l
12+
# `_vscprintf_p`, `_vscprintf_p_l`, `_vscwprintf_p`, `_vscwprintf_p_l`
1313

1414
Returns the number of characters in the formatted string using a pointer to a list of arguments, with the ability to specify the order in which the arguments are used.
1515

@@ -20,7 +20,7 @@ int _vscprintf_p(
2020
const char *format,
2121
va_list argptr
2222
);
23-
int _vscprintf_p _l(
23+
int _vscprintf_p_l(
2424
const char *format,
2525
_locale_t locale,
2626
va_list argptr
@@ -29,7 +29,7 @@ int _vscwprintf_p (
2929
const wchar_t *format,
3030
va_list argptr
3131
);
32-
int _vscwprintf_p _l(
32+
int _vscwprintf_p_l(
3333
const wchar_t *format,
3434
_locale_t locale,
3535
va_list argptr
@@ -38,55 +38,55 @@ int _vscwprintf_p _l(
3838

3939
### Parameters
4040

41-
*format*<br/>
41+
*`format`*\
4242
Format-control string.
4343

44-
*argptr*<br/>
44+
*`argptr`*\
4545
Pointer to list of arguments.
4646

47-
*locale*<br/>
47+
*`locale`*\
4848
The locale to use.
4949

5050
For more information, see [Format Specifications](../../c-runtime-library/format-specification-syntax-printf-and-wprintf-functions.md).
5151

5252
## Return Value
5353

54-
**_vscprintf_p** returns the number of characters that would be generated if the string pointed to by the list of arguments was printed or sent to a file or buffer using the specified formatting codes. The value returned does not include the terminating null character. **_vscwprintf_p** performs the same function for wide characters.
54+
**`_vscprintf_p`** returns the number of characters that would be generated if the string pointed to by the list of arguments was printed or sent to a file or buffer using the specified formatting codes. The value returned does not include the terminating null character. **`_vscwprintf_p`** performs the same function for wide characters.
5555

5656
## Remarks
5757

58-
These functions differ from **_vscprintf** and **_vscwprintf** only in that they support the ability to specify the order in which the arguments are used. For more information, see [printf_p Positional Parameters](../../c-runtime-library/printf-p-positional-parameters.md).
58+
These functions differ from **`_vscprintf`** and **`_vscwprintf`** only in that they support the ability to specify the order in which the arguments are used. For more information, see [`printf_p` Positional Parameters](../../c-runtime-library/printf-p-positional-parameters.md).
5959

60-
The versions of these functions with the **_l** suffix are identical except that they use the locale parameter passed in instead of the current thread locale.
60+
The versions of these functions with the **`_l`** suffix are identical except that they use the locale parameter passed in instead of the current thread locale.
6161

62-
If *format* is a null pointer, the invalid parameter handler is invoked, as described in [Parameter Validation](../../c-runtime-library/parameter-validation.md). If execution is allowed to continue, the functions return -1 and set **errno** to **EINVAL**.
62+
If *`format`* is a null pointer, the invalid parameter handler is invoked, as described in [Parameter Validation](../../c-runtime-library/parameter-validation.md). If execution is allowed to continue, the functions return -1 and set **`errno`** to **`EINVAL`**.
6363

6464
> [!IMPORTANT]
65-
> Ensure that if *format* is a user-defined string, it is null terminated and has the correct number and type of parameters. For more information, see [Avoiding Buffer Overruns](/windows/win32/SecBP/avoiding-buffer-overruns).
65+
> Ensure that if *`format`* is a user-defined string, it is null terminated and has the correct number and type of parameters. For more information, see [Avoiding Buffer Overruns](/windows/win32/SecBP/avoiding-buffer-overruns).
6666
> Starting in Windows 10 version 2004 (build 19041), the `printf` family of functions prints exactly representable floating point numbers according to the IEEE 754 rules for rounding. In previous versions of Windows, exactly representable floating point numbers ending in '5' would always round up. IEEE 754 states that they must round to the closest even digit (also known as "Banker's Rounding"). For example, both `printf("%1.0f", 1.5)` and `printf("%1.0f", 2.5)` should round to 2. Previously, 1.5 would round to 2 and 2.5 would round to 3. This change only affects exactly representable numbers. For example, 2.35 (which, when represented in memory, is closer to 2.35000000000000008) continues to round up to 2.4. Rounding done by these functions now also respects the floating point rounding mode set by [`fesetround`](fegetround-fesetround2.md). Previously, rounding always chose `FE_TONEAREST` behavior. This change only affects programs built using Visual Studio 2019 version 16.2 and later. To use the legacy floating point rounding behavior, link with ['legacy_stdio_float_rounding.obj`](../link-options.md).
6767
6868
### Generic-Text Routine Mappings
6969

7070
|TCHAR.H routine|_UNICODE & _MBCS not defined|_MBCS defined|_UNICODE defined|
7171
|---------------------|------------------------------------|--------------------|-----------------------|
72-
|**_vsctprintf_p**|**_vscprintf_p**|**_vscprintf_p**|**_vscwprintf_p**|
73-
|**_vsctprintf_p_l**|**_vscprintf_p_l**|**_vscprintf_p_l**|**_vscwprintf_p_l**|
72+
|**`_vsctprintf_p`**|**`_vscprintf_p`**|**`_vscprintf_p`**|**`_vscwprintf_p`**|
73+
|**`_vsctprintf_p_l`**|**`_vscprintf_p_l`**|**`_vscprintf_p_l`**|**`_vscwprintf_p_l`**|
7474

7575
## Requirements
7676

7777
|Routine|Required header|
7878
|-------------|---------------------|
79-
|**_vscprintf_p**, **_vscprintf_p_l**|\<stdio.h>|
80-
|**_vscwprintf_p**, **_vscwprintf_p_l**|\<stdio.h> or \<wchar.h>|
79+
|**`_vscprintf_p`**, **`_vscprintf_p_l`**|`<stdio.h>`|
80+
|**`_vscwprintf_p`**, **`_vscwprintf_p_l`**|`<stdio.h>` or `<wchar.h>`|
8181

8282
For additional compatibility information, see [Compatibility](../../c-runtime-library/compatibility.md).
8383

8484
## Example
8585

86-
See the example for [vsprintf](vsprintf-vsprintf-l-vswprintf-vswprintf-l-vswprintf-l.md).
86+
See the example for [`vsprintf`](vsprintf-vsprintf-l-vswprintf-vswprintf-l-vswprintf-l.md).
8787

8888
## See also
8989

90-
[vprintf Functions](../../c-runtime-library/vprintf-functions.md)<br/>
91-
[_scprintf_p, _scprintf_p_l, _scwprintf_p, _scwprintf_p_l](scprintf-p-scprintf-p-l-scwprintf-p-scwprintf-p-l.md)<br/>
92-
[_vscprintf, _vscprintf_l, _vscwprintf, _vscwprintf_l](vscprintf-vscprintf-l-vscwprintf-vscwprintf-l.md)<br/>
90+
[`vprintf` Functions](../../c-runtime-library/vprintf-functions.md)\
91+
[`_scprintf_p`, `_scprintf_p_l`, `_scwprintf_p`, `_scwprintf_p_l`](scprintf-p-scprintf-p-l-scwprintf-p-scwprintf-p-l.md)\
92+
[`_vscprintf`, `_vscprintf_l`, `_vscwprintf`, `_vscwprintf_l`](vscprintf-vscprintf-l-vscwprintf-vscwprintf-l.md)\

docs/dotnet/how-to-marshal-callbacks-and-delegates-by-using-cpp-interop.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ The following example demonstrates how to configure an unmanaged API to trigger
1818

1919
Notice that is it possible, but not necessary, to pin the delegate using [pin_ptr (C++/CLI)](../extensions/pin-ptr-cpp-cli.md) to prevent it from being re-located or disposed of by the garbage collector. Protection from premature garbage collection is needed, but pinning provides more protection than is necessary, as it prevents collection but also prevents relocation.
2020

21-
If a delegate is re-located by a garbage collection, it will not affect the underlaying managed callback, so <xref:System.Runtime.InteropServices.GCHandle.Alloc%2A> is used to add a reference to the delegate, allowing relocation of the delegate, but preventing disposal. Using GCHandle instead of pin_ptr reduces fragmentation potential of the managed heap.
21+
If a delegate is re-located by a garbage collection, it will not affect the underlying managed callback, so <xref:System.Runtime.InteropServices.GCHandle.Alloc%2A> is used to add a reference to the delegate, allowing relocation of the delegate, but preventing disposal. Using GCHandle instead of pin_ptr reduces fragmentation potential of the managed heap.
2222

2323
```cpp
2424
// MarshalDelegate1.cpp

docs/standard-library/toc.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ items:
213213
href: treat-as-floating-point-structure.md
214214
- name: tzdb struct
215215
href: tzdb-struct.md
216-
- name: tzcb_list class
216+
- name: tzdb_list class
217217
href: tzdb-list-class.md
218218
- name: utc_clock class
219219
href: utc-clock-class.md

0 commit comments

Comments
 (0)