C或C++
C++学习与工具使用
嗷嗷_
加油,成为更好的攻城狮!每天进步一点点
展开
-
在CLion的一个工程中如何创建并运行多个cpp文件
这篇的方法比较简单:CLion工程中只能有一个main函数 &&怎么同时编写多个main函数的C文件_clion只能运行一个main函数_justinzwd的博客-CSDN博客原创 2023-04-07 13:28:21 · 1460 阅读 · 0 评论 -
CLion 控制台输出中文乱码的解决方法
照着这篇中的做即可,亲测有效:CLion 控制台输出中文乱码 - 简书原创 2023-04-06 20:19:56 · 630 阅读 · 0 评论 -
C++中将结果从文件中读入和将结果写入文件:
示例代码2:#include <fstream>#include <iostream>using namespace std;int main(){ int a[10]; ifstream in("读入.txt"); //打开要从文件中读入数据的文件 for(int i=0;i<10;i++) in>>a[i]; //从文件中读入 for(int i=0;i<10;i++) cout<<a[i]&l...原创 2020-07-01 21:31:14 · 2301 阅读 · 0 评论 -
C语言字符数组与C++中STL的string的区别
一、字符数组:直接使用,不需要引用头文件1、初始化:两种方式 第一种方式,数组中只有五个元素,但是第二种方式,赋予的是字符串常量,而字符串常量在C语言中约定用'\0'作为字符串的结束标志,它占内存空间。这里的"china"的有效长度为 5 ,但实际上还有第 6 个字符'\0'。也就是说,当遇到'\0'时,表示字符串结束,由它前面的字符组成字符串。在程序中,常用'\0'来判断字符串是否结束,因此所定义的字符数组长度应该大于字符串的实际长度,这样才足以存放相应的字符串,这就...原创 2020-07-01 21:25:42 · 597 阅读 · 0 评论 -
在C++中float和double的存储
double类型赋值问题: double d=1;屏幕显示: d=1.0double d=1/2;屏幕显示: d=0.0 double d=1.0/2;屏幕显示: d=0.5 double d=1/2.0;屏幕显示: d=0.5在两个数之间做乘或者除的时候如果要想使结果的精度保持不变,一定要在变量赋值的时候采用相同的精度。例如:double a=1,c=2;double d=a/c;屏幕显示: d...原创 2020-07-01 21:09:23 · 519 阅读 · 0 评论 -
数据类型相关内容与强制类型转换
数据类型相关内容与强制类型转换一个数字数据类型可以容纳的数字大于另一个数据类型,从上到下排序: 可以称越处于上方的,排名越高在数学表达式中数据类型的自动转换规则:规则 1:char、short 和 unsigned short 值自动升级为 int 值。细心的读者可能已经注意到,char、short 和 unsigned short 都未出现在表 1 中,这是因为无论何时在数学表达式中使用这些数据类型的值,它们都将自动升级为 int 类型。规则 2:当运算符使用...原创 2020-07-01 21:06:19 · 158 阅读 · 0 评论 -
C语言(C++)中:详解floor函数、ceil函数和round函数
C语言(C++)中:详解floor函数、ceil函数和round函数经过验证,是可以直接将double类型赋值给int类型的。也就是说在C++中,如果将一个类型的变量直接赋值给另一个类型的变量,却没有写强制类型转换操作,那么编译器将会自动进行转换。也就是 double b=1.000; int a=b; //可以直接这样写,而不需要写成int a=(int)b;...原创 2020-07-01 21:03:16 · 949 阅读 · 1 评论 -
7、C语言中字符串的基本操作
1、C语言的字符串都是已零结尾的字符串2、在C语言中没有字符串类型,都是通过字符数组来模拟字符串原创 2018-02-07 19:46:34 · 142 阅读 · 0 评论 -
6、野指针
1、野指针产生的原因:当指针所指向的内存空间被释放时,指针变量本身的值没有改变仍然是指向那块已经被释放的空间,就造成了指针指向了无效的位置,从而形成了野指针。2、避免方法:(1)定义指针的时候,要将指针变量的值初始化为null (2)释放指针所指向的内存空间后,要将指针重置为null。3、常见错误: (1)char *p1=NULL; s原创 2018-01-29 21:43:32 · 147 阅读 · 0 评论 -
3、内存四区基本原理
1、内存四区的建立过程: 首先操作系统将物理硬盘中的代码装载到内存中, 然后操作系统将c代码分成四个区, 最后操作系统找到main函数的入口开始执行。2、内存四区具体分析: 栈区(stack):由编译器自动分配释放,存放函数的参数值、程序局部变量等。 堆区(heap):一般由程序员分配释放(动态内存申请和释放:原创 2018-01-29 17:32:21 · 649 阅读 · 0 评论 -
5、数组地址增长方向和函数调用相关问题
1、数组地址增长方向和栈的生长方向是两个不同的概念。在不同的操作系统中栈的生长方向可能不一样,有的是向上生长,有的是向下生长。但是不管是哪种生长方向,数组定义了之后,在栈中的生长方向都是向上的,如下图所示: 其中,数组上的箭头表示数组中数组的首地址位置。 2、具体见下图,主函数中调用fa函数,fa函数中调用了fb函数: 3、函数调用模型:原创 2018-01-29 18:04:03 · 540 阅读 · 0 评论 -
1、数据类型基础提高
int b[10];printf("b:%d,b+1:%d,&b:%d,&b+1:%d\n",b,b+1,&b,&b+1); b和&b的结果输出是一样的,都是数组的首地址,但是b+1和&b+1的结果不一样,因为它们两个的数据类型不一样,b+1的结果是在b的地址上加4,因为b表示数组的首元素地址,是int类型的,而&b表示的是整个数组的地址,是一个数组类型,所以&b+1是指数组后面的下一原创 2018-01-27 19:17:31 · 101 阅读 · 0 评论 -
4、VS2013上配置#系列快捷方式
首先需要VS装了相关的助手,然后点击菜单栏上的VAssistX,然后选择VA Snippet Editor,在里面进行相关设置的命名保存即可。例如,可以将常用的#define之类的和main()函数进行保存,作为#1快捷键中可以立即在VS中使用的内容,然后需要的时候,在VS中直接输入#1,即可插入,快速实现快捷键的功能。原创 2018-01-29 17:44:32 · 426 阅读 · 0 评论 -
2、变量的本质剖析
变量的本质: 1、程序通过变量来申请和命名内存空间2、通过变量名访问内存空间: 变量名是(一段连续)内存空间的别名,且仅是别名,是放在内存外面的。3、修改变量有几种方法:(3种) (1)直接:int c; c=10; (2)间接:利用内存的地址编号来修改变量的内存中的内容,从而修改了变量,就产原创 2018-01-27 20:03:08 · 152 阅读 · 0 评论