当前位置: 网站首页>网站建设>网络推广

【网站优化】拉萨淘宝装修/拉萨京东店铺设计/拉萨拼多多网店装修公司/拉萨企业网店开通申请-网店装修设计【简单基础中小型网站】

发表日期: 2022-09-01 14:40:05 浏览次数:108

上往建站提供网站建设网站推广网店设计网站建设企业网站网站制作网页设计网站建设企业网站制作网页制作   高端定制网站建设H5页面设计开发微网站微信运营移动端设计开发手机端网站小程序,致力于苏州企业网站建设与公司网站制作,全国用户超10万,10余年的网站开发和建站经验,主营:网站建设网络推广微信公众号代运营、商城小程序开发定制网店设计等业务,专业团队服务,效果好。。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)

拉萨淘宝装修/拉萨京东店铺设计/拉萨拼多多网店装修公司/拉萨企业网店开通申请-网店装修设计

网站建设.png

  printf( "nYou entered: ");   putchar( c );   printf( "n");   return 0;}

当上面的代码被编译和执行时,它会等待您输入一些文本,当您输入一个文本并按下回车键时,程序会继续并只会读取一个单一的字符,显示如下:

$./a.outEnter a value :runoobYou entered: r

gets() & puts() 函数

char *gets(char *s) 函数从 stdin 读取一行到 s 所指向的缓冲区,直到一个终止符或 EOF。

int puts(const char *s) 函数把字符串 s 和一个尾随的换行符写入到 stdout

实例

#include <stdio.h> int main( ){   char str[100];   printf( "Enter a value :");   gets( str );   printf( "nYou entered: ");   puts( str );   return 0;}

当上面的代码被编译和执行时,它会等待您输入一些文本,当您输入一个文本并按下回车键时,程序会继续并读取一整行直到该行结束,显示如下:

$./a.outEnter a value :runoobYou entered: runoob

scanf() 和 printf() 函数

int scanf(const char *format, ...) 函数从标准输入流 stdin 读取输入,并根据提供的 format 来浏览输入。

int printf(const char *format, ...) 函数把输出写入到标准输出流 stdout ,并根据提供的格式产生输出。

format 可以是一个简单的常量字符串,但是您可以分别指定 %s、%d、%c、%f 等来输出或读取字符串、整数、字符或浮点数。还有许多其他可用的格式选项,可以根据需要使用。如需了解完整的细节,可以查看这些函数的参考手册。现在让我们通过下面这个简单的实例来加深理解:

实例

#include <stdio.h>int main( ) {   char str[100];   int i;   printf( "Enter a value :");   scanf("%s %d", str, &i);   printf( "nYou entered: %s %d ", str, i);   printf("n");   return 0;}

当上面的代码被编译和执行时,它会等待您输入一些文本,当您输入一个文本并按下回车键时,程序会继续并读取输入,显示如下:

$./a.outEnter a value :runoob 123You entered: runoob 123

在这里,应当指出的是,scanf() 期待输入的格式与您给出的 %s 和 %d 相同,这意味着您必须提供有效的输入,比如 "string integer",如果您提供的是 "string string" 或 "integer integer",它会被认为是错误的输入。另外,在读取字符串时,只要遇到一个空格,scanf() 就会停止读取,所以 "this is test" 对 scanf() 来说是三个字符串。


nux系统下需要这样编译:不支持 gets 与 puts, 需要用 fgets 和 fputs。


将以下代码放到 test.c 文件:


#include <stdio.h>


int main()

{

    char c[100];

    printf("Enter a value:");

    fgets( c,100,stdin );


    printf(" you entered:");

    fputs( c,stdout );


    return 0;


}

编译执行以上代码,输出结果为:


# gcc test.c 

# ./a.out 

Enter a value:runoob


you entered:runoob

ms0

   ms0


  261***255@qq.com


6年前 (2017-03-12)

   simone


  183***1483@qq.com


   参考地址


44

gets()与fgets()

gets()

gets函数原型:char*gets(char*buffer);//读取字符到数组:gets(str);str为数组名。


gets函数功能:从键盘上输入字符,直至接受到换行符或EOF时停止,并将读取的结果存放在buffer指针所指向的字符数组中。


读取的换行符被转换为null值,做为字符数组的最后一个字符,来结束字符串。


注意:gets函数由于没有指定输入字符大小,所以会无限读取,一旦输入的字符大于数组长度,就会发生内存越界,


从而造成程序崩溃或其他数据的错误。


fgets()

fgets函数原型:char *fgets(char *s, int n, FILE *stream);//我们平时可以这么使用:fgets(str, sizeof(str), stdin);


其中str为数组首地址,sizeof(str)为数组大小,stdin表示我们从键盘输入数据。


fgets函数功能:从文件指针stream中读取字符,存到以s为起始地址的空间里,直到读完N-1个字符,或者读完一行。


注意:调用fgets函数时,最多只能读入n-1个字符。读入结束后,系统将自动在最后加'',并以str作为函数值返回。


借用教程实例,我把char str[100] 改为 char str[5]


#include <stdio.h>


int main( )

{

    char str[5];


    printf( "Enter a value :");

    gets( str );


    printf( " You entered: ");

    puts( str );

    return 0;

}

如果输入123(长度小于5)结果为:


Enter a value :123


You entered: 123

如果输入123456789(长度大于5)结果为:


Enter a value :123456789


You entered: 123456789

虽然正常显示了,但是系统提示程序崩溃了


如果不能正确使用gets()函数,带来的危害是很大的,就如上面我们看到的,输入字符串的长度大于缓冲区长度时,并没有截断,原样输出了读入的字符串,造成程序崩溃。

考虑到程序安全性和健壮性,建议用fgets()来代替gets()。如:

#include <stdio.h>


int main( )

{

    char str[5];


    printf( "Enter a value :");

    fgets( str,5,stdin );      //fgets()函数;


    printf( " You entered: ");

    puts( str );

    return 0;

}

simone

   simone


  183***1483@qq.com


   参考地址


6年前 (2017-03-23)

   Mrodot


  mro***@qq.com


   参考地址


27

Windows、Unix、Mac不同操作系统的换行问题 回车符和换行符

一、概念:


换行符‘ ’和回车符‘’


(1)换行符就是另起一行  --- ' ' 10 换行(newline)


(2)回车符就是回到一行的开


拉萨淘宝装修/拉萨京东店铺设计/拉萨拼多多网店装修公司/拉萨企业网店开通申请-网店装修设计


上往建站提供微信小程序+公众号商城+企业网站建设一站式微信网站商城营销系统,微信小程序是一种依附于微信体内即点即用,无需下载安装即可使用的轻应用,它开启了移动端“触手可及”的梦想,致力于苏州企业网站建设与公司网站制作,全国用户超10万,10余年的网站开发和建站经验,主营:网站建设微信公众号代运营商城小程序开发定制网店设计等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


400-111-6878
服务热线
顶部

备案号: 苏ICP备2021016738号-6

CopyRight © 2021 上往建站 All Right Reserved 未经许可不得复制转载

24小时服务热线:400-111-6878   E-MAIL:1120768800@qq.com   QQ:1120768800

  网址: https://www.768800.club  网站建设上往建站

关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|

企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|

400电话办理| 书生商友软件|

预约专家

欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系

  

全国服务热线:400-111-6878