当前位置: 首页 > news >正文

深圳建站公司开发费用杭州精高端网站建设

深圳建站公司开发费用,杭州精高端网站建设,西安网站建设ipv6,泰安房价各小区排行表一.输入密码时候,隐藏密码 用函数getch(),头文件#include<conio.h>输入一个字符时候不会回显,getc会回显实现思路: 输入一个字符,由于不知道密码长度,所以设置为死循环,如果不是回车键,即将该字符添加到存放密码的数组里,顺便打印一个星号,如果输入的为回车键,由于getch…

一.输入密码时候,隐藏密码

  • 用函数getch(),头文件#include<conio.h>
  • 输入一个字符时候不会回显,getc会回显
  • 实现思路: 输入一个字符,由于不知道密码长度,所以设置为死循环,如果不是回车键,即将该字符添加到存放密码的数组里,顺便打印一个星号,如果输入的为回车键,由于getch()函数读入回车键时候,返回的是\r,所以如果是\r,则将字符数组的末尾加上\0,再跳出循环

//密码输入
void Input_pwd(char* pwd,int size) {char c = 0;int i = 0;while (1) {c = getch();//不会回显if (c == '\r') {//getch函数读到回车符号为\rpwd[i] = '\0';break;}else {cout << '*';pwd[i++] = c;}}cout << endl;
}

二.解决多文件开发头文件重复包含的方法

  • 由于使用多文件开发,需要再cpp文件里面包含.h文件,再将多个.h文件相互包含,可能会出现重复包含的情况,
  • 解决方法 : VS里面特定的方式是,在.h文件的开头加上 #pragma once
  • 公用方法 :在.h文件里面用宏定义,
    #例如在cs.h文件内,宏名一般用该格式,没要求
    #ifndef _CS_H_
    #define
    //代码块#endif//对应的是ifndefine

三.指针数组与数组指针

  • 数组指针 例如 int (*p)[3];
  • 数组指针访问方法 ( p  = &A[0] )
    • 数组法 : (*p)[j];
    • 指针法 : *((*p)+j)     *( *(p + i) + j)
  • 指针数组 例如 int *p[3];.每个元素都是一个变量的地址

四.void空指针

  • 其他类型可以自动转换为void类型,但是void类型要转换成其他类型需要强制类型转换
  • 空指针不允许进行算术运算,因为大小不知道
  • 空指针里面仍然存储的是变量的地址,只是类型不知道
	int a = 10;int *p1 = &a;void* p = &a;//cout << *p << endl; error 空指针//p1 = p;//errorp1 = (int *)p;//需要进行强制类型转换p = p1;//可以,其他类型可以转换为空指针

5.函数指针

  • 函数指针的定义 : 把函数声明移过来,把函数名改为(* 函数指针名)

例如

//函数
int compare_int (const int *,const int *);//该函数的指针 int (*fp) (const int *,const int *);//给该指针赋值fp = &compare_int;//传参数两种方式(*fp)(&x,&y);//第一种,按普通指针解引的方式进行调用
fp(&x,&y);//第二种,直接调用//(*fp)等同于compare_int
  • qsort()函数
    • 语法 qsort(数组名,数组元素个数,每个元素占的字节,cmp函数);
    • qsort参数为void类型指针,可以比较任何数据类型
    • cmp函数格式
int cmp(const void *a, const void *b) {return *(int*)a - *(int*)b ;//由小到大排序//换成b-a之后是从大到小排列
}
  • 测试 :
int cmp(const void *a, const void *b) {return *(int*)b - *(int*)a ;
}
int main() {int q[2] = { 1,2 };qsort(q, sizeof(q) / sizeof(int), sizeof(int), &cmp);cout << q[0] << " " << q[1] << endl;}
  • 字符比较,混杂大小写,在比较时候不考虑大小写的方法

 六.引用类型

  • 引用变量本身也会占内存,内存的大小等于一个指针变量的大小
  • 对同一内存空间可以取好几个别名
  • 引用可以定义多个,引用也有自己的空间,引用变量像常指针,编辑器在编译时会将引用改为指针
  • 在c++的底层引用就是用指针实现的 Type& name  <----->  Type* const name
  • 在使用的角度,引用会让人误会是一个别名,没有自己的存储空间,这是c++为了实用性而做出的细节隐藏
#include <iostream>
#include <stdio.h>using namespace std;
int swap1(int& a, int& b) {int temp = a;a = b;b = temp;return 0;
}int swap2(int* const a, int* const b) {int temp = *a;*a = *b;*b = temp;return 0;
}
int main() {int x = 10;int y = 100;swap1(x, y);cout << "x = " << x << " y = " << y << endl;swap2(&x, &y);cout << "x = " << x << " y = " << y << endl;
}//编辑器会将引用类型的swap1在编译时候转换成swap2的形式

七.指针引用

  • 可以代替二级指针

int home1(int ** meipo) {static int boy = 18;*meipo = &boy;return 0;
}int home2(int* & meipo) {static int boy = 18;meipo = &boy;return 0;
}
int main() {int* meipo = nullptr;home1(&meipo);cout << "meipo = " << *meipo << endl;//指针引用,可以代替二级指针,home2(meipo);cout << "meipo = " << *meipo << endl;return 0;
}

八.内存复制函数

  • 将一段内存里面的数据复制到另一段内存种
memcpy(&b,&a,sizeof(a));
//将a变量内存,复制给b内存一份,大小为a变量的大小

http://www.yayakq.cn/news/666514/

相关文章:

  • 建设银行网站解除绑定常州做网站价格
  • 阿里建站系统呼伦贝尔网站开发
  • 淮安网站开发git主题wordpress
  • 通信管理局 网站备案网络设计的目的
  • 网站建设入什么会计科目和各大网站做视频的工作总结
  • 网站建立于网页设计怎么做贝店式的网站
  • 做网站需要注意的点中国科协网站建设招标
  • 山西网站建设服务公司杭州做网站公司有哪些
  • 视频网站后台功能自适应网站建设推荐
  • 动画网站模块工程建设与设计期刊
  • wordpress手机站如何做用cms做网站的缺点
  • 中国互联网站建设免费推广手段有哪些
  • 东莞网站免费制作wordpress react 影响
  • 深圳美容网站建设网站如何添加友情链接
  • vs2013做简单的网站网站建设原因
  • 本地网站建设多少钱wordpress小工具编辑器
  • 个人可以网站备案吗织梦医院网站源码
  • 温州建设局网站上海建智建设人才培训中心网站
  • 做婚礼请柬的网站有哪些软考5个高级中哪个好考
  • 大连网络推广网站优化找哪家好合肥企业建网站
  • 彩虹云商城网站搭建对门户网站建设的见解
  • 祖传做网站博兴网站建设
  • 网站建设开发服务费下什么科目企业网站板块
  • 营销型网站方案ppt模板网站开发怎么收费
  • 网站系统后台手机网站在线咨询代码
  • 专业模板网站设计公司北京信息维护公司
  • 百度怎么建立网站珠海关键词优化软件
  • 免费建手机商城网站吗临沂网站临沂网站制作
  • 懂做网站的人就是好肇庆正规网页设计培训试听
  • 网站开发套餐省运会官方网站建设