#include <stdio.h>
#include <stdlib.h>
void myputs(char*p) //此处的*号是标志,标志这P是一个指针
{ if(p==NULL)
{
printf("需要输出的字符串为空,请重新输入");

}
else
{
while(1)
{
putchar(*p++); //此处的* 号是运行的意思,只有在指针的定义的时候表示的才是标志,此处也是取出内容的意思
if(*p=='\0') //注意此处应当是对指针指向的指针,取出其中的内容,在进行判断,字符串最后的字符是'\n';
{

break;
}

}

}
}
//输入函数,函数的效果相当于gets();
void mygets(char*p)
{ if(p==NULL) //判断内存是否合法
{
printf("内存是非法的");

}
else{ printf("请输入字符串:");
while( *p=getchar()) //注意这样做的做法依然的可以,让while继续的循环。
{
//*p=getchar(); //将获取到的字符给指针变量 在进行输入的时候,应当注意首先将指针取地址。不然操作无效,给指着的复制是一样的效果。
if(*p=='\n') //判断键盘输入输入放入是不是换行字符
{
return ;//进行返回,结束程序
}
else{
p++; //将指针地址进行偏移
}
}
}
}

//实现数组的初始化。1.指针变量,初始化的对象 2。初始化的为什么字符 3。初始化的大小
void mymenset(char *p ,char c, int size)
{ while(size)
{
*p++=c;
size--;


}





}
int main()
{ char *p2=NULL; //避免定义的指针野指针,将其指向改为空。
p2=(char *)malloc(128); //空间的开辟
if(p2==NULL) //判断空间的开辟是否成功
{printf("空间开辟失败");
exit(-1); //关闭程序。
}
mymenset(p2,'\0',128); //空间的初始化,1.表示初始化的对象 2.表示初始化成的字符 3. 表示初始化的大小memset()函数
char *p="小明很帅!";
//puts(p);
//函数的调用
mygets(p2);
myputs(p2);
// myputs(p);
return 0;
}

putchar与getchar的更多相关文章

  1. C putchar() 和 getchar()

    C 库函数 int getchar(void)   从 终端输入获取一个字符 : 返回值:该函数以无符号 char 强制转换为 int 的形式返回读取的字符,如果到达文件末尾或发生读错误,则返回 EO ...

  2. c/c++学习系列之putchar、getchar、puts、gets的运用

    如果您只想取得使用者输入的字元,則可以使用getchar(),它直接取得使用者輸入的字元并传回,如果只想要输出一個字元,則也可以直接使用putchar(),以下是个简单的例子: #include &l ...

  3. putchar()和getchar()使用解析

    1.putchar() 作用:输出一个字符 格式:putchar(c),c为输出参数 #include <stdio.h> int main() { char a1='A',b1='B'; ...

  4. fgetc,getc,fputc,putc,putchar,getchar

    转自 http://blog.csdn.net/todd911/article/details/8952565 输入输出函数家族 家族名                   目的           ...

  5. (十)C语言之putchar、getchar

  6. Linux C 字符函数 getchar()、putchar() 与 EOF 详解

    首先给出<The_C_Programming_Language>这本书中的例子: #include <stdio.h> int main() { int c; c = getc ...

  7. C语言中最常用的三种输入输出函数scanf()、printf()、getchar()和putchar()

    本文给大家介绍C语言中最常用的三种输入输出函数scanf().printf().getchar()和putchar(). 一.scanf()函数格式化输入函数scanf()的功能是从键盘上输入数据,该 ...

  8. C语言中的getchar和putchar详解

    首先给出<The_C_Programming_Language>这本书中的例子: #include <stdio.h> int main(){    int c;     c ...

  9. C语言的puts(),gets(),putchar(),getchar()

    其实puts(),gets()属于字符串输入函数. putchar()与getchar()属于字符输入函数. 1.字符函数 #include<stdio.h> int main(){ ch ...

随机推荐

  1. 基于Koa与umi实现服务端(SSR)渲染

    工具: umijs:react前端应用框架. koa:基于 Node.js 平台的web 开发框架. 介绍: 本文主要是简单介绍,利用umi开发前端页面,打包成服务端渲染工程包.由Koa实现服务端渲染 ...

  2. 【Java分享客栈】SpringBoot线程池参数搜一堆资料还是不会配,我花一天测试换你此生明白。

    一.前言   首先说一句,如果比较忙顺路点进来的,可以先收藏,有时间或用到了再看也行:   我相信很多人会有一个困惑,这个困惑和我之前一样,就是线程池这个玩意儿,感觉很高大上,用起来很fashion, ...

  3. 使用Visual Studio 2022开发前端

    前端开发环境多数基于Node.js,好处不多说了.但与使用Visual Studio开发的后端Asp.Net Core项目一起调试,却不是很方便,所以试着在Visual Studio 2022中开发前 ...

  4. CentOS7安装部署Mongodb

    1.下载安装包 打开官网,跳转至下载界面,选择对应版本的安装包,拷贝其链接,这里是手动安装,所以下载tgz安装包,如果要自动化安装,选择server的rpm自动安装包 https://www.mong ...

  5. os、json、sys、subprocess模块

    os模块 import os 1.创建目录(文件夹) os.mkdir(r'a') # 相对路径 只能创建单级目录 os.makedirs(r'a\b') # 可以创建单级和多及目录 2.删除目录 o ...

  6. Java学习笔记-基础语法Ⅲ

    继承:子类使用extends来继承父类,子类可以有父类的内容,还可以有子类自己特有的内容 继承的好处: 提高了代码的复用性(多个类相同的成员可以放到同一个类中) 提高了代码的维护性(如果方法的代码需要 ...

  7. sqlserver limit

    select Loaction.Lat,Loaction.Long from Company order by CompanyId OFFSET 4 ROWS FETCH NEXT 2 ROWS ON ...

  8. 8┃音视频直播系统之 WebRTC 信令系统实现以及通讯核心并实现视频通话

    一.信令系统 信令系统主要用来进行信令的交换 在通信双方彼此连接.传输媒体数据之前,它们要通过信令服务器交换一些信息,如规范协商 若 A 与 B 要进行音视频通信,那么 A 要知道 B 已经上线了,同 ...

  9. strlen获取字符数组为什么是255

    为什么是255呢? strlen函数的规则是,读取到0则判断字符串结束. char为1字节,只有8位. 所以...... -1就是 1111 1111, -2就是 1111 1110, 直到-128: ...

  10. C# 通关手册(持续更新......)

    String 常用静态方法 string.Compare(string str1,string str2,bool ignoreCase) 按照字典顺序比较字符串 当str1 > str2时,返 ...