Visual C++.NET运行库函数大全 PDF 清晰版

  • 更新时间:
  • 1640人关注
  • 点击下载

给大家带来的一篇关于Visual C++相关的电子书资源,介绍了关于Visual、C++、.NET运行库方面的内容,本书是由电子工业出版社出版,格式为PDF,资源大小57.69MB,官章全编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:7.6分

Visual C++.NET库包括MFC、ATL、标准C++库和运行库等内容。运行库则包含大量预定义的函数和宏,这些函数和宏并不在C和C++语言中提供,其作用和地位类似于Windows API函数,它们可自动实现大量编程任务。在Windows 98/Me/NT/2000/XP操作系统下利用这些函数和宏进行Visual C++.NET编程,大大方便了C++程序设计。标准C++库和运行库函数相互补充,是对编写C++应用程序的强有力的支撑。本书分21类介绍了常用的Visual C++.NET运行库函数和宏,是开发C++程序不可缺少的基本参考资料。

目录

  • 第1章参数访问 1
  • 1.1va_arg.va_end和va_start 2
  • 第2章缓冲区处理 5
  • 2.1_memccpy 6
  • 2.2memchr和wmemchr 7
  • 2.3memcmp和wmemcmp 9
  • 2.4memcpy和wmemcpy 10
  • 2.5_memicmp 11
  • 2.6memmove和wmemmove 13
  • 2.7memset和wmemset 14
  • 2.8_swab 15
  • 第3章字节分类 17
  • 3.1isleadbyte 20
  • 3.2_ismbbalnum 20
  • 3.3_ismbbalpha 21
  • 3.4_ismbbgraph 21
  • 3.5_ismbbkalnum 22
  • 3.6_ismbbkana 22
  • 3.7_ismbbkprint 22
  • 3.8_ismbbkpunct 23
  • 3.9_ismbblead 23
  • 3.10_ismbbprint 24
  • 3.11_ismbbpunct 24
  • 3.12_ismbbtrail 25
  • 3.13_ismbslead和_ismbstrail 25
  • 3.14_mbbtype 26
  • 3.15_mbsbtype 27
  • 3.16mbsinit 28
  • 第4章字符分类 31
  • 4.1isalnum和iswalnum 32
  • 4.2_ismbcalnum._ismbcalpha和_ismbcdigit 33
  • 4.3isalpha和iswalpha 34
  • 4.4_isascii和iswascii 35
  • 4.5iscntrl和iswcntrl 35
  • 4.6_iscsym和_iscsymf 36
  • 4.7isdigit和iswdigit 37
  • 4.8isgraph和iswgraph 37
  • 4.9_ismbcgraph._ismbcprint._ismbcpunct和_ismbcspace 38
  • 4.10islower和iswlower 39
  • 4.11_ismbclower和_ismbcupper 40
  • 4.12_ismbclegal和_ismbcsymbol 40
  • 4.13isprint和iswprint 41
  • 4.14ispunct和iswpunct 42
  • 4.15isspace和iswspace 42
  • 4.16isupper和iswupper 43
  • 4.17iswctype 44
  • 4.18isxdigit和iswxdigit 44
  • 4.19_mbclen和mblen 45
  • 第5章数据队列 47
  • 5.1_aligned_free 48
  • 5.2_aligned_malloc 48
  • 5.3_aligned_offset_malloc 50
  • 5.4_aligned_offset_realloc 50
  • 5.5_aligned_realloc 51
  • 第6章数据转换 53
  • 6.1abs和_abs64 55
  • 6.2atof._wtof.atoi._wtoi._atoi64._wtoi64.atol和_wtol 56
  • 6.3_ecvt 58
  • 6.4_fcvt 59
  • 6.5_gcvt 61
  • 6.6_itoa._i64toa._ui64toa._itow._i64tow和_ui64tow 62
  • 6.7labs 64
  • 6.8_ltoa和_ltow 65
  • 6.9_mbbtombc 66
  • 6.10_mbctombb 67
  • 6.11mbstowcs 67
  • 6.12mbtowc 69
  • 6.13strtod和wcstod 70
  • 6.14strtol和wcstol 72
  • 6.15strtoul和wcstoul 75
  • 6.16strxfrm和wcsxfrm 77
  • 6.17_toascii 78
  • 6.18tolower._tolower和towlower 79
  • 6.19_mbctolower和_mbctoupper 81
  • 6.20toupper._toupper和towupper 82
  • 6.21_ultoa和_ultow 83
  • 6.22wcstombs 84
  • 6.23wctomb 86
  • 第7章调试函数 89
  • 7.1_ASSERT和_ASSERTE宏 91
  • 7.2_CrtCheckMemory 94
  • 7.3_CrtDbgReport 97
  • 7.4_CrtDoForAllClientObjects 105
  • 7.5_CrtDumpMemoryLeaks 109
  • 7.6_CrtIsValidHeapPointer 109
  • 7.7_CrtIsMemoryBlock 111
  • 7.8_CrtIsValidPointer 112
  • 7.9_CrtMemCheckpoint 112
  • 7.10_CrtMemDifference 113
  • 7.11_CrtMemDumpAllObjectsSince 114
  • 7.12_CrtMemDumpStatistics 115
  • 7.13_CrtSetAllocHook 115
  • 7.14_CrtSetBreakAlloc 116
  • 7.15_CrtSetDbgFlag 118
  • 7.16_CrtSetDumpClient 122
  • 7.17_CrtSetReportFile 123
  • 7.18_CrtSetReportHook 127
  • 7.19_CrtSetReportHook2 128
  • 7.20_CrtSetReportMode 131
  • 7.21_RPT和_RPTF宏 133
  • 7.22_calloc_dbg 135
  • 7.23_expand_dbg 137
  • 7.24_free_dbg 139
  • 7.25_malloc_dbg 140
  • 7.26_msize_dbg 141
  • 7.27_realloc_dbg 142
  • 7.28_set_security_error_handler 143
  • 第8章目录控制 145
  • 8.1_chdir和_wchdir 146
  • 8.2_chdrive 147
  • 8.3_getcwd和_wgetcwd 149
  • 8.4_getdcwd和_wgetdcwd 150
  • 8.5_getdiskfree 152
  • 8.6_getdrive 155
  • 8.7_getdrives 156
  • 8.8_mkdir和_wmkdir 157
  • 8.9_rmdir和_wrmdir 159
  • 8.10_searchenv和_wsearchenv 160
  • 第9章错误处理 163
  • 9.1assert 164
  • 9.2_ASSERT和_ASSERTE宏 165
  • 9.3clearerr 168
  • 9.4_eof 169
  • 9.5feof 170
  • 9.6ferror 171
  • 9.7_RPT和_RPTF宏 172
  • 9.8_set_error_mode 175
  • 第10章异常处理函数 177
  • 10.1_set_se_translator 178
  • 10.2set_terminate 180
  • 10.3set_unexpected 181
  • 10.4terminate 182
  • 10.5unexpected 184
  • 第11章文件处理 185
  • 11.1_chsize 187
  • 11.2_filelength和_filelengthi64 188
  • 11.3_fstat._fstat64和_fstati64 189
  • 11.4_isatty 192
  • 11.5_locking 192
  • 11.6_setmode 194
  • 11.7_access和_waccess 195
  • 11.8_chmod和_wchmod 197
  • 11.9_fullpath和_wfullpath 199
  • 11.10_get_osfhandle 201
  • 11.11_makepath和_wmakepath 201
  • 11.12_mktemp和_wmktemp 203
  • 11.13_open_osfhandle 205
  • 11.14remove和_wremove 206
  • 11.15rename和_wrename 207
  • 11.16_splitpath和_wsplitpath 208
  • 11.17_stat._stat64._stati64._wstat._wstat64和_wstati64 210
  • 11.18_umask 213
  • 11.19_unlink和_wunlink 214
  • 11.20fopen和_wfopen 215
  • 11.21_fsopen和_wfsopen 218
  • 11.22_open和_wopen 220
  • 11.23_sopen和_wsopen 223
  • 11.24_fdopen和_wfdopen 226
  • 11.25_fileno 229
  • 11.26_open_osfhandle 230
  • 11.27_pipe 230
  • 11.28freopen和_wfreopen 236
  • 第12章浮点支持函数 239
  • 12.1abs和_abs64 241
  • 12.2acos和acosf 241
  • 12.3asin和asinf 243
  • 12.4atan.atanf.atan2和atan2f 244
  • 12.5atof._wtof.atoi._wtoi._atoi64._wtoi64.atol和_wtol 245
  • 12.6Bessel函数 245
  • 12.7_cabs 247
  • 12.8ceil和ceilf 248
  • 12.9_chgsign 249
  • 12.10_clear87和_clearfp 250
  • 12.11_control87和_controlfp 253
  • 12.12_copysign 256
  • 12.13cos.cosf.cosh和coshf 257
  • 12.14difftime 258
  • 12.15div 259
  • 12.16_ecvt 260
  • 12.17exp和expf 261
  • 12.18fabs和fabsf 262
  • 12.19_fcvt 263
  • 12.20_finite 263
  • 12.21floor和floorf 263
  • 12.22fmod和fmodf 264
  • 12.23_fpclass 265
  • 12.24_fpieee_flt 266
  • 12.25_fpreset 269
  • 12.26frexp 271
  • 12.27_gcvt 272
  • 12.28_hypot和hypotf 273
  • 12.29_isnan 274
  • 12.30labs 275
  • 12.31ldexp 275
  • 12.32ldiv 276
  • 12.33log.logf.log10和log10f 277
  • 12.34_logb 278
  • 12.35_lrotl和_lrotr 278
  • 12.36_matherr 279
  • 12.37_max 282
  • 12.38_min 283
  • 12.39modf和modff 284
  • 12.40_nextafter 285
  • 12.41pow和powf 285
  • 12.42printf和wprintf 286
  • 12.43rand 289
  • 12.44_rotl._rotl64和_rotr_rotr64 290
  • 12.45_scalb 291
  • 12.46scanf和wscanf 292
  • 12.47sin.sinf.sinh和sinhf 293
  • 12.48sqrt和sqrtf 295
  • 12.49srand 296
  • 12.50_status87和_statusfp 297
  • 12.51strtod和wcstod 298
  • 12.52tan.tanf.tanh和tanhf 300
  • 12.53longdouble类型 302
  • 第13章输入和输出 303
  • 文本和二进制模式文件I/O 304
  • 文本和二进制模式中的Unicode流I/O 304
  • 13.1clearerr 307
  • 13.2fclose和_fcloseall 308
  • 13.3_fdopen和_wfdopen 309
  • 13.4feof 312
  • 13.5ferror 313
  • 13.6fflush 314
  • 13.7fgetc.fgetwc._fgetchar和_fgetwchar 316
  • 13.8fgetpos 317
  • 13.9fgets和fgetws 319
  • 13.10_fileno 320
  • 13.11_flushall 321
  • 13.12fopen和_wfopen 322
  • 13.13fprintf和fwprintf 322
  • 13.14fputc.fputwc._fputchar和_fputwchar 324
  • 13.15fputs和fputws 325
  • 13.16fread 326
  • 13.17freopen和_wfreopen 328
  • 13.18fscanf和fwscanf 328
  • 13.19fseek 330
  • 13.20fsetpos 332
  • 13.21_fsopen和_wfsopen 332
  • 13.22ftell 332
  • 13.23fwrite 334
  • 13.24getc.getwc.getchar和getwchar 335
  • 13.25_getmaxstdio 337
  • 13.26gets和_getws 337
  • 13.27_getw 338
  • 13.28printf和wprintf 340
  • 13.29putc.putwc.putchar和putwchar 342
  • 13.30puts和_putws 344
  • 13.31_putw 345
  • 13.32rewind 346
  • 13.33_rmtmp 347
  • 13.34scanf和wscanf 348
  • 13.35setbuf 350
  • 13.36_setmaxstdio 351
  • 13.37setvbuf 352
  • 13.38_snprintf和_snwprintf 353
  • 13.39_snscanf和_snwscanf 357
  • 13.40sprintf和swprintf 358
  • 13.41sscanf和swscanf 360
  • 13.42_tempnam._wtempnam.tmpnam和_wtmpnam 361
  • 13.43tmpfile 364
  • 13.44ungetc和ungetwc 365
  • 13.45vfprintf和vfwprintf 366
  • 13.46vprintf和vwprintf 367
  • 13.47_vsnprintf和_vsnwprintf 368
  • 13.48vsprintf和vswprintf 369
  • 13.49_close 371
  • 13.50_commit 372
  • 13.51_creat和_wcreat 373
  • 13.52_dup和_dup2 375
  • 13.53_eof 377
  • 13.54_lseek和_lseeki64 378
  • 13.55_open和_wopen 380
  • 13.56_read 382
  • 13.57_sopen和_wsopen 384
  • 13.58_tell和_telli64 387
  • 13.59_umask 388
  • 13.60_write 389
  • 13.61_cgets和_cgetws 391
  • 13.62_cprintf和_cwprintf 392
  • 13.63_cputs和_cputws 394
  • 13.64_cscanf和_cwscanf 395
  • 13.65_getch._getwch._getche和_getwche 396
  • 13.66_inp._inpw和_inpd 397
  • 13.67_kbhit 398
  • 13.68_outp._outpw和_outpd 399
  • 13.69_putch和_putwch 399
  • 13.70_ungetch和_ungetwch 401
  • 第14章国际化函数 403
  • 14.1atof.atoi和atol 405
  • 14.2is和isw函数 405
  • 14.3isleadbyte 410
  • 14.4localeconv 411
  • 14.5MB_CUR_MAX 413
  • 14.6_mbccpy 413
  • 14.7_mbclen和mblen 414
  • 14.8strlen.wcslen._mbslen和_mbstrlen 414
  • 14.9mbstowcs 416
  • 14.10mbtowc 416
  • 14.11printf和wprintf 416
  • 14.12scanf和wscanf 418
  • 14.13setlocale和_wsetlocale 420
  • 14.14strcoll.wcscoll和_mbscoll 426
  • 14.15_stricmp._wcsicmp和_mbsicmp 428
  • 14.16_stricoll._wcsicoll和_mbsicoll 430
  • 14.17_strncoll._wcsncoll和_mbsncoll 431
  • 14.18_strnicmp._wcsnicmp和_mbsnicmp 432
  • 14.19_strnicoll._wcsnicoll和_mbsnicoll 435
  • 14.20strftime和wcsftime 436
  • 14.21_strlwr._wcslwr和_mbslwr 440
  • 14.22strtod和wcstod 441
  • 14.23strtol和wcstol 441
  • 14.24strtoul和wcstoul 442
  • 14.25_strupr._wcsupr和_mbsupr 442
  • 14.26strxfrm和wcsxfrm 443
  • 14.27to函数 443
  • 14.28wcstombs 445
  • 14.29wctomb 445
  • 14.30多字节字符序列的解释 445
  • 14.31代码页 445
  • 14.32单字节和多字节字符集 446
  • 14.33SBCS和MBCS数据类型 446
  • 14.34Unicode宽字符集 447
  • 14.35通用文本映射 447
  • 14.36通用文本程序 454
  • 第15章内存分配 457
  • 15.1_alloca 458
  • 15.2calloc 459
  • 15.3_calloc_dbg 460
  • 15.4operatordelete 460
  • 15.5operatordelete[] 461
  • 15.6_expand 462
  • 15.7_expand_dbg 463
  • 15.8free 463
  • 15.9_free_dbg 465
  • 15.10_get_sbh_threshold 465
  • 15.11_heapadd 465
  • 15.12_heapchk 466
  • 15.13_heapmin 467
  • 15.14_heapset 467
  • 15.15_heapwalk 469
  • 15.16malloc 472
  • 15.17_malloc_dbg 473
  • 15.18_msize 473
  • 15.19_msize_dbg 475
  • 15.20operatornew 475
  • 15.21operatornew[] 476
  • 15.22_query_new_handler 478
  • 15.23_query_new_mode 478
  • 15.24realloc 479
  • 15.25_realloc_dbg 480
  • 15.26_set_new_handler 481
  • 15.27_set_new_mode 482
  • 15.28_set_sbh_threshold 483
  • 第16章进程和环境控制 485
  • 16.1abort 488
  • 16.2assert 489
  • 16.3_ASSERT和_ASSERTE宏 490
  • 16.4atexit 490
  • 16.5_beginthread和_beginthreadex 492
  • 16.6_cexit和_c_exit 497
  • 16.7_cwait 498
  • 16.8_endthread和_endthreadex 500
  • 16.9_execl和_wexecl 503
  • 16.10_execlp和_wexeclp 506
  • 16.11_execlpe和_wexeclpe 507
  • 16.12_execv和_wexecv 508
  • 16.13_execve和_wexecve 508
  • 16.14_execvp和_wexecvp 509
  • 16.15_execvpe和_wexecvpe 510
  • 16.16exit和_exit 513
  • 16.17getenv和_wgetenv 514
  • 16.18_getpid 516
  • 16.19longjmp 517
  • 16.20_onexit 520
  • 16.21_pclose 521
  • 16.22perror和_wperror 522
  • 16.23_pipe 523
  • 16.24_popen和_wpopen 523
  • 16.25_putenv和_wputenv 525
  • 16.26raise 527
  • 16.27setjmp 528
  • 16.28signal 531
  • 16.29_spawnl和_wspawnl 532
  • 16.30_spawnle和_wspawnle 535
  • 16.31_spawnlp和_wspawnlp 536
  • 16.32_spawnlpe和_wspawnlpe 537
  • 16.33_spawnv和_wspawnv 538
  • 16.34_spawnve和_wspawnve 539
  • 16.35_spawnvp和_wspawnvp 540
  • 16.36_spawnvpe和_wspawnvpe 541
  • 16.37system和_wsystem 543
  • 第17章运行错误检查 545
  • 17.1_RTC_GetErrDesc 546
  • 17.2_RTC_NumErrors 546
  • 17.3_RTC_SetErrorFunc 547
  • 17.4_RTC_SetErrorType 549
  • 第18章查找和排序 551
  • 18.1bsearch 552
  • 18.2_lfind 554
  • 18.3_lsearch 555
  • 18.4qsort 556
  • 第19章字符串处理 559
  • 19.1_mbscoll.strcoll和wcscoll 561
  • 19.2_mbsicoll._stricoll和_wcsicoll 562
  • 19.3_mbsncoll._strncoll和_wcsncoll 563
  • 19.4_mbsnicoll._strnicoll和_wcsnicoll 565
  • 19.5_mbsdec._strdec和_wcsdec 566
  • 19.6_mbsinc._strinc和_wcsinc 567
  • 19.7strlen.wcslen._mbslen和_mbstrlen 568
  • 19.8_mbsnbcat 568
  • 19.9_mbsnbcmp 568
  • 19.10_mbsnbcnt._mbsnccnt._strncnt和_wcsncnt 570
  • 19.11_mbsnbcpy 572
  • 19.12_mbsnbicmp 573
  • 19.13_mbsnbset 575
  • 19.14_mbsnextc._strnextc和_wcsnextc 576
  • 19.15_mbsninc._strninc和_wcsninc 576
  • 19.16_mbsspnp._strspnp和_wcsspnp 577
  • 19.17_scprintf和_scwprintf 578
  • 19.18_snscanf和_snwscanf 579
  • 19.19sprintf和swprintf 581
  • 19.20strcat.wcscat和_mbscat 581
  • 19.21strchr.wcschr和_mbschr 582
  • 19.22strcmp.wcscmp和_mbscmp 584
  • 19.23strcpy.wcscpy和_mbscpy 586
  • 19.24strcspn.wcscspn和_mbscspn 588
  • 19.25_strdup._wcsdup和_mbsdup 589
  • 19.26strerror._strerror._wcserror和_wcserror 590
  • 19.27strftime和wcsftime 592
  • 19.28_stricmp._wcsicmp和_mbsicmp 592
  • 19.29_strlwr._wcslwr和_mbslwr 593
  • 19.30strncat.wcsncat和_mbsncat 593
  • 19.31strncmp.wcsncmp和_mbsncmp 594
  • 19.32strncpy.wcsncpy和_mbsncpy 596
  • 19.33_strnicmp._wcsnicmp和_mbsnicmp 598
  • 19.34_strnset._wcsnset和_mbsnset 600
  • 19.35strpbrk.wcspbrk和_mbspbrk 601
  • 19.36strrchr.wcsrchr和_mbsrchr 603
  • 19.37_strrev._wcsrev和_mbsrev 605
  • 19.38_strset._wcsset和_mbsset 606
  • 19.39strspn.wcsspn和_mbsspn 607
  • 19.40strstr.wcsstr和_mbsstr 608
  • 19.41strtok.wcstok和_mbstok 610
  • 19.42_strupr._wcsupr和_mbsupr 612
  • 19.43strxfrm和wcsxfrm 612
  • 19.44vsprintf和vswprintf 612
  • 第20章系统调用 613
  • 20.1_findclose 614
  • 20.2_findfirst._findfirst64._findfirsti64._wfindfirst._wfindfirst64和_wfindfirsti64614
  • 20.3_findnext._findnext64._findnexti64._wfindnext._wfindnext64和_wfindnexti64 616
  • 第21章时间管理 619
  • 21.1asctime和_wasctime 620
  • 21.2clock 622
  • 21.3ctime._ctime64._wctime和_wctime64 624
  • 21.4difftime 625
  • 21.5_ftime和_ftime64 626
  • 21.6_futime和_futime64 628
  • 21.7gmtime和_gmtime64 630
  • 21.8localtime和_localtime64 631
  • 21.9mktime和_mktime64 633
  • 21.10_strdate和_wstrdate 635
  • 21.11strftime和wcsftime 637
  • 21.12_strtime和_wstrtime 637
  • 21.13time和_time64 639
  • 21.14_tzset 639
  • 21.15_utime._utime64._wutime和_wutime64 641
     
展开阅读
精选笔记:用Visual Studio2017写C++静态库图文详解

18小时20分钟前回答

造轮子是一件有趣的事情,VS是一个强大的工具,能胜任超大规模的工程,但是讲真,对不那么大的项目配置起来不是那么友好(网上的其他教程也一点都不友好Orz)。这里就展示一下构建一个简单的静态库的正确姿势。(顺便教一点道理

创建解决方案——许多人搞不清工程/项目Project和解决方案Solution的区别,在VS中,Project是基本的执行单元,一个Solution可以包含多个Project——我们的静态库就将会包含几个(.lib)Project和一个(.exe)Project用作测试。解决方案选win32 Console Application控制台。

类型选Static Library静态库,去掉Precompiled Header预编译头选项。

添加头文件和源文件。

源文件.cpp同理,之后应该是这个样子:

(注意,只添加.h文件而没有.cpp是不行的,这样一个工程编译不出来.lib库,之后你测试的时候就会出现" "xxx.lib": cannot open file specified"之类的报错别问我怎么知道的Orz)

(另一种回头cannot open file specified的原因是.lib生成的位置不对,在这里看Solution Explorer->Properties属性页

->Output Direction输出目录

默认那个是对的在\Debug目录下,谁知道怎么会错)

然后就可以写代码了:

//  MathLib.h
#pragma once
int add(int x, int y);
//  MathLib.cpp
#include "MathLib.h"
int add(int x, int y) { return x + y; }

然后你需要一个Project来测试(回想开头说的,一个Solution可以有多个Project,它们都是执行单位(一会会再讲到怎么叫执行单位这是我自己造的概念)),在Solution Explorer里面为Solution加入新工程:

选控制台,把预编译头去掉和之前一样,现在我们得到了一个含有俩Projects的Solution了:

编写一段测试代码

//  Test.cpp
#include "stdafx.h"
#include "..\MathLib\MathLib.h"
#include <iostream>
int main()
{
  std::cout << add(1, 2) << std::endl;
  return 0;
}

现在需要为Test添加MathLib的引用,这一步实际的作用是,在引导IDE用cl编译器命令行编译的时候,加入正确的链接选项(CSAPP有非常inspiring的讲解,源文件#include了头文件以后只是为链接器介绍了一堆未重定位的符号,它需要在库文件(静态库的话Linux是.a文件Windows是.lib)里找这些符号完成重定位),找到这些库很重要。在Solution Explorer里面Add Reference如图

VS很贴心地把Solution里的Projects列进了备选项,选中即可。

此时Test的Reference里就有MathLib工程了。

下一步,为cl编译器添加include路径,也就是说,预编译期应该怎么找MathLib.h以完成符号的引入。在Test Properties属性页->C++->General->Additional Include Directaries附加包含路径,就是额外于标准库头文件目录的其他(自定义)头文件包含的目录,cl要去这些地方找MathLib.h。选择添加MyStaticLibrary\MathLib这个目录OK。


这个时候万事俱备,F5组建运行结果报了这么个错:

说.lib不是有效的win32应用不能运行。对呀我本来也没要运行它呀,可是VS怎么知道Solution里面这么多Projects应该运行哪一个?(想想之前的执行单元理解到是什么意思了吧,每个Project编译的结果都认为可执行)第一个添加的Project是MathLib所以VS默认去运行它的输出所以错了。想办法引导VS去运行Test的输出(Test.exe),Solution Explorer->MyStaticLibrary Properties属性页:

设单启动工程为Test,OK。

以上所述是小编给大家介绍的用Visual Studio2017写C++静态库,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对码农之家网站的支持!

展开阅读

资源下载

相关资源

  • Visual C++开发入行真功夫

    Visual C++开发入行真功夫

    Visual C++开发入行真功夫 作者:三扬科技 编著 出版时间:2009 丛编项:开发专家 本书全面介绍了Visual C++ 2008开发环境的特点、使用方法及相关编程技巧。内容涵盖了Visual Studio 2008运行环境的介绍、C++编程基础、MFC的应用等;详细讲解了使用Visual C++ 2008进行Windows相关应用程序开发的方法和流程,包括对话框及常用控件的实现,打印操作原理及应用,键盘、鼠标操作,图形、音频、视频的处理,多线程及网络编程,数据库操作,后台服务程序管理等多方面内

    大小:53.16MBC++开发

    立即下载
  • Visual C++/CLI从入门到精通

    Visual C++/CLI从入门到精通

    Visual C++/CLI从入门到精通 共四部分24章,结构清晰叙述清楚,分别介绍和讨论了C++.NET基础与Microsoft.NET编程基础,阐述如何使用.NET Framework,解释了非托管代码,特性和反射,兼容COM等高级主题

    大小:81.2 MBC++

    立即下载
  • Visual C++实践与提高:图形图像编程篇

    Visual C++实践与提高:图形图像编程篇

    VisualC++实践与提高—图形图像编程篇 作者:李于剑 丛书名:计算机编程实践与提高系列 中国铁道 出版日期:2001年7月 本书将向读者讲述如何用VisualC++进行图形图像编程。本书共分为图形篇、图像篇、综合提高篇。图形篇以计算机绘图的基础知识为铺垫,介绍了各种图形元素的绘制方法,并结合实际代码实现了一个小型的绘图系统;图像篇通过实例向读者介绍了不同格式图像的处理方法,并给出了一些特效处理的技巧;综合提高篇综合应用了图形图像

    大小:16.32 MBC++

    立即下载
  • Visual C++面向对象编程教程(第2版)

    Visual C++面向对象编程教程(第2版)

    本书系统地介绍了Visual C++面向对象编程的基本原理和方法。主要内容包括C++程序设计、Visual C++编程基础和Visual C++高级编程三个部分,按照VisualC++编程环境C++语言应用程序向导文档/视图结构对话框和控件MFC图形处理编程深入的顺序计教学内容。本书适合作为高等学校相关课程的教材或参考书,也可作为Visual C++应用开发人员的自学读本或培训教材。 目录 前言 第1章 Visual C++集成开发环境 1.1 Visual C++概述 1.1.1 Visual C++的

    大小:5.71 MBC++编程

    立即下载
  • Visual C++开发实战

    Visual C++开发实战

    Visual C++开发实战

    大小:113.79MBVisual C++

    立即下载
  • Visual C++/Turbo C串口通信编程实践

    Visual C++/Turbo C串口通信编程实践

    VisualC++/TurboC串口通信编程实践 作者:龚建伟熊光明 出版时间:2004/10/1 本书从编程实践的角度详细介绍了Windows环境下和DOS环境下的串口通 信的基本方法,并根据当前串口与网络结合发展的趋势,介绍了串口与网络 TCP/IP、远程控制与监测相结合的一些解决方案和编程要点。由于编程步骤 详尽,初学VisualC++/C(甚至是以前完全没有接触过VisualC++)的读者也 能很快编写出VisualC++的串口通信程序。本书配光盘,书中实例源程序和 相关资料可在对应章节的文件夹中

    大小:16.27 MBC++

    立即下载

学习笔记

7小时16分钟前回答

用Visual Studio2017写C++静态库图文详解

造轮子是一件有趣的事情,VS是一个强大的工具,能胜任超大规模的工程,但是讲真,对不那么大的项目配置起来不是那么友好(网上的其他教程也一点都不友好Orz)。这里就展示一下构建一个简单的静态库的正确姿势。(顺便教一点道理 创建解决方案——许多人搞不清工程/项目Project和解决方案Solution的区别,在VS中,Project是基本的执行单元,一个Solution可以包含多个Project——我们的静态库就将会包含几个(.lib)Project和一个(.exe)Project用作测试。解决方案选win32 Console Application控制台。 类型选Static Library静态库,去掉Precompiled Header预编译头选项。 添加头文件和源文件。 源文件.cpp同理,之后应该是这……

21小时16分钟前回答

VisualStudio2019构建C/C++静态库和动态库dll的问题 附源码

1. 静态库和动态库 1.1. 静态链接库 举个例子,假如你在编写一个C++工程,根据业务逻辑,这个工程需要用到一些工具类,例如集合操作的工具类(暂且叫他collection_utils),于是你直接定义一个 collection_utils.h 头文件和一个 collection_utils.cpp 文件,在头文件中写一些工具函数的定义,在cpp文件中写函数的实现逻辑;如下所示: //---------------collection_utils.h-----------------------------#ifndef COLLECTION_UTILS#define COLLECTION_UTILS//合并两个集合Collection mergeCollection(const Collection c2);#endif//---------------collection_utils.h-----------------------------//---------------collection_utils.cpp-----------------------------#include "collection_utils.h"#include vector// .....Col……

20小时39分钟前回答

Visual Studio Code配置C、C++环境并编写运行的方法

弄了半天,总算弄好了,结合网上的教程,整理分享一下~ 总体流程: 下载安装vscode 安装cpptools插件 安装编译、调试环境 修改vscode调试配置文件 下载安装vscode https://code.visualstudio.com/Download Visual Studio Code 64位 v1.26.0 官方最新安装版:https://www.xz577.com/softs/606746.html Visual Studio Code 32位 v1.26.0 官方最新安装版: https://www.xz577.com/softs/606747.html Visual Studio Code(代码编辑器) v1.20.1 64位 中文免费绿色版 https://www.xz577.com/softs/586169.html 安装cpptools插件 打开vscode,按ctrl+p打开快速命令框,输入以下命令后等待 ext install cpptools vscode在短暂的联网查找后会列出插件列表,如图: 点击箭头所指处的按钮安装插件,安装过程可能会……