C/C++
Mr番茄蛋
大家一起学习
展开
-
C语言中exit()、_Exit()、_exit()、return区别
其中exit()、_Exit()、_exit()表示进程结束,return是语言级别的,它表示了调用堆栈的返回,如果返回的是main函数,则为退出程序。函数介绍#include <unistd.h>void _exit(int status);#include <stdlib.h>void exit(int status);void _Exit(int status);区别_exit() --- 直接结束进程进入到内核中exit() --- 清理I/O缓冲原创 2020-07-01 12:19:33 · 1573 阅读 · 0 评论 -
unix下标准IO和文件IO区别与联系
一、什么是文件I/O和标准I/O:文件I/O:文件I/O称之为不带缓存的IO(unbuffered I/O)。不带缓存指的是每个read,write都调用内核中的一个系统调用。也就是一般所说的低级I/O——操作系统提供的基本IO服务,与os绑定,特定于linix或unix平台。标准I/O:标准I/O是ANSI C建立的一个标准I/O模型,是一个标准函数包和stdio.h头文件中的定义,具有一定的可移植性。标准I/O库处理很多细节。例如缓存分配,以优化长度执行I/O等。标准的I/O提供了三种类型的缓存。原创 2020-06-26 20:16:17 · 577 阅读 · 0 评论 -
ANSI C、ISO C、GNU C、POSIX C标准头文件
ISO C标准定义的头文件(24项)<assert.h> ---------------------- 验证程序断言<complex.h> ---------------------- 支持复数算术运算<ctype.h> ---------------------- 字符类型<errno.h> ---------------------- 出错码<fenv.h>原创 2020-06-26 13:20:43 · 543 阅读 · 0 评论 -
守护进程,关闭后台文件
守护进程,关闭后台文件。#include <sys/param.h>#include <stdio.h>#include<unistd.h>int main(){ printf("NOFILE: %d\n",NOFILE); for(int i=0;i<NOFILE;i++){ close(i); } return 0;}原创 2020-05-31 15:08:32 · 279 阅读 · 0 评论 -
Linux C编程常见头文件和定义
ISO C的标准头文件POSIX定义的必须头文件POSIX定义的可选头文件limits.h中定义整型大小基本系统数据类型原创 2020-05-30 22:58:28 · 557 阅读 · 0 评论 -
gcc常用命令和参数说明
参数gcc文件类型约定gcc常用选项命令链接库函数库是一些头文件(.h) 和库文件(.so或 .a)的集合,在Linux下大多头文件的默认路径是/usr/include/,而库文件默认路径在/usr/include/,但并不是所有情况都是这样,当头文件和库文件在别的位置时,利用gcc编译需要指定所需要的头文件和库文件。gcc通过搜索目录的办法查询所需要的文件,-I选项可以向默认路径中添加新目录。比如在home/name/include/下编写了程序foo.c,为了gcc能够找到,需要用如下原创 2020-05-30 14:59:06 · 584 阅读 · 0 评论 -
C语言和C++不同,为什么const不能在C语言中定义数组大小原因
在c语言编程中我们这样定义数组时编译器回报一个错误const int n=5;int ar[n];这确实是一个很棘手的问题,它会迫使我们用动态开辟空间的方法来定义数组,但是我们使用动态开辟的方法比较复杂,容易出现错误。所以我们需要解决这个问题。为什么会出现上面原因呢?(在c++中是可以的)主要原因是:这个问题讨论的是“常量”与“只读变量”的区别。常量肯定是只读的,例如数字5, 字...原创 2019-11-02 20:37:29 · 1233 阅读 · 0 评论 -
VSCode CMake 安装与使用教程
概述在windows上使用cmake编译C/C++程序时,首先需要CMake,安装gcc/g++编译环境,然后使用VSCode 以及配置下CMakelist.txt。CMake是什么你或许听过好几种 Make 工具,例如 GNU Make ,QT 的 qmake ,微软的 MS nmake,BSD Make(pmake),Makepp,等等。这些 Make 工具遵循着不同的规范和标准,所执行...原创 2019-10-31 20:22:55 · 16086 阅读 · 11 评论 -
VS code编写(多文件)c/c++,使用make编译
环境操作系统:win10编译器: mingw32(需要安装make)参考链接:【传送门】目标:实现多文件的编译运行与调试本文使用c写一个求和函数作为例子。首先新建一个文件夹,以英文命名,在文件夹中创建Debug和Release两个子文件夹再创建多个c文件。1. my.h头文件#ifndef _MY_H#define _MY_Hint sum(int m, int n);...原创 2019-10-31 18:52:46 · 17293 阅读 · 4 评论 -
MinGW安装及使用vscode写C/C++
MinGW安装在ubuntu系统上我们可以直接安装gcc/g++,但在windows上无法直接安装g++,这时候就需要用到MinGW啦,MinGW是从Cygwin(1.3.3版)基础上发展而来。GCC支持的语言大多在MinGW也受支持,其中涵盖C、C++、Objective-C、Fortran及Ada。对于C语言之外的语言,MinGW使用标准的GNU运行库,如C++使用GNU libstdc++...原创 2019-10-31 16:46:21 · 6143 阅读 · 0 评论 -
c语言动态分配二维数组和释放
#include <stdio.h>#include <malloc.h> int main(){ int **a; int i, j; a = (int**)malloc(sizeof(int*)*3);//为二维数组分配3行 for (i = 0; i < 3; ++i){//为每列分配4个大小空间 a[i]...原创 2019-10-02 15:40:39 · 782 阅读 · 0 评论