首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

read函数的返回值问题

Read函数读取字符串返回值的问题 1. 前言 在学习socket编程的途中, 通过客户端给服务端发送字符串,然后服务端通过read或者recv来读取数据,然后返回读取的字节数....大概的意思就是read函数从文件描述符fd中读取字节到count大小的buf中,如果成功读取的话,返回读到的字节数大小,否则返回-1....读取到的字节数包含结束符,而是包含换行符....很显而易见,buf只读取了hello,没有了换行符,所以导致第一行和下一行连在一起了. read函数返回的字节大小和strlen返回的字符串长度都是5,验证了这一点. 5....,不是结束符'\0'的大小. read函数读取包含'\0', strlen读取的也包含'\0' read在文件中读取字符串可以包含换行符. 6.

2.6K10

linuxread命令

read命令后面,如果没有指定变量名,读取的数据将被自动赋值给特定的变量REPLY 命令语法 read [选项][参数] 命令选项 -a 后跟一个变量,该变量会被认为是个数组,然后给其赋值,默认是以空格为分割符...> read rumenz1 rumenz2 从标准输入读取一行并赋值给特定变量REPLY。 > read 123 > echo $REPLY 123 把单词清单读入arrayname的数组里。...> read -p "text:" text:123 > echo $REPLY 123 允许输入包含反斜杠。 > read -r rumenz 指定读取等待时间为3秒。...> read -t 2 rumenz 从输入中读取两个字符并存入变量var,不需要按回车读取。 > read -n 2 rumenz 用定界符“:”结束输入行。...> read -d ":" rumenz 读入数组 > read -a rumenz 123 456 789 > echo ${rumenz[*]} 123 456 789 终端输入密码时候,不让密码显示出来

1.9K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    linuxread命令

    read命令后面,如果没有指定变量名,读取的数据将被自动赋值给特定的变量REPLY 命令语法 read [选项][参数] 命令选项 -a 后跟一个变量,该变量会被认为是个数组,然后给其赋值,默认是以空格为分割符...> read rumenz1 rumenz2 从标准输入读取一行并赋值给特定变量REPLY。 > read 123 > echo $REPLY 123 把单词清单读入arrayname的数组里。...> read -p "text:" text:123 > echo $REPLY 123 允许输入包含反斜杠。 > read -r rumenz 指定读取等待时间为3秒。...> read -t 2 rumenz 从输入中读取两个字符并存入变量var,不需要按回车读取。 > read -n 2 rumenz 用定界符“:”结束输入行。...> read -p "输入密码:" -s pd 密码: > echo $pd 123456 原文链接:https://rumenz.com/rumenbiji/linux-read.html 微信公众号

    2.1K00

    linuxread命令

    read命令后面,如果没有指定变量名,读取的数据将被自动赋值给特定的变量REPLY 命令语法 read [选项][参数] 命令选项 -a 后跟一个变量,该变量会被认为是个数组,然后给其赋值,默认是以空格为分割符...> read rumenz1 rumenz2 从标准输入读取一行并赋值给特定变量REPLY。 > read 123 > echo $REPLY 123 把单词清单读入arrayname的数组里。...> read -p "text:" text:123 > echo $REPLY 123 允许输入包含反斜杠。 > read -r rumenz 指定读取等待时间为3秒。...> read -t 2 rumenz 从输入中读取两个字符并存入变量var,不需要按回车读取。 > read -n 2 rumenz 用定界符“:”结束输入行。...> read -p "输入密码:" -s pd 密码: > echo $pd 123456 原文链接:https://rumenz.com/rumenbiji/linux-read.html

    1.8K00

    Linux tcpip 源码分析 - read

    之后又调用call_read_iter方法,传入这些新的参数,继续执行read逻辑 // include/linux/fs.h static inline ssize_t call_read_iter...设置变量copied的值为0,该变量用于记录拷贝tcp数据到用户提供的buf的字节数,最终返回给用户。 2....字段是否为null,即ip层传给tcp层的数据是否都已处理了,如果两种情况都满足,则跳出循环,返回copied变量的值给用户。...当条件不满足时,则看当前sock是否有异常发生,比如error或close等,如果有异常,则看copied值是否大于0,如果大于0,则先不管当前异常,跳出while循环,返回当前copied的值。...如果有异常,且copied的值为0,则根据异常情况,设置相应的错误码,然后跳出循环,返回错误码给用户。 11.

    3.1K20

    HTTP返回码总结,拿走谢!

    http状态返回代码 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态代码。 http状态返回代码 代码 说明 100(继续) 请求者应当继续提出请求。...http状态返回代码 2xx (成功) 表示成功处理了请求的状态代码。 http状态返回代码 代码 说明 200(成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。...203(非授权信息) 服务器已成功处理了请求,但返回的信息可能来自另一来源。 204(无内容) 服务器成功处理了请求,但没有返回任何内容。...服务器返回此响应时,不会返回网页内容。 305(使用代理) 请求者只能使用代理访问请求的网页。 如果服务器返回此响应,还表示请求者应使用代理。...一些常见的http状态返回代码为: 200- 服务器成功返回网页 404- 请求的网页不存在 503- 服务不可用

    1.8K20

    【高级编程】Linux read系统调用

    fd_install:以文件描述符为索引,关联当前进程描述符和上述的 file 对象,为之后的 read 和 write 等操作作准备。 函数最后返回该文件的文件描述符。 4.3....一个物理页可能由多个连续的物理磁盘块组成。也正是由于页面中映射的磁盘块不一定连续,所以在页高速缓存中检测特定数据是否已被缓存就变得不那么容易了。另外linux页高速缓存对被缓存页的范围定义的非常宽。...为了满足普遍性要求,linux使用定义在linux/fs.h中的结构体address_space结构体描述页高速缓存中的页面。...试图将当前请求同请求队列中现有的请求合并,如果合并成功,则函数返回,否则跳到3。 该请求是一个新请求,创建新的请求描述符,并初始化相应的域,并将该请求描述符加入到请求队列中,函数返回。...之后,函数 sys_read 可以返回了。最终 read 系统调用也可以返回了。 至此, read 系统调用从发出到结束的整个处理过程就全部结束了。

    6.1K110

    python让函数返回结果的方法

    函数返回值简介 1、简单介绍print和return的区别,print仅仅是打印在控制台,而return则是将return后面的部分作为返回值:作为函数的输出,可以用变量接走,继续使用该返回值做其它事。...2、函数需要先定义后调用,函数体中return语句的结果就是返回值。如果一个函数没有reutrn语句,其实它有一个隐含的return语句,返回值是None,类型也是’NoneType’。...func(x,y): num = x + y return print(func(1,2)) #上面代码的输出结果为:None 从上面例子可以看出print( )只是起一个打印作用,函数具体返回什么由...return决定 return语句的作用: 结束函数调用、返回值 指定返回值与隐含返回值: 1、函数体中return语句有指定返回值时返回的就是其值 2、函数体中没有return语句时,函数运行结束会隐含返回一个...None作为返回值,类型是NoneType,与return 、return None 等效,都是返回 None。

    6.3K41
    领券