r n的研究解决方法
\r \n的研究
因为在学习php,所以就发在这个区了。之所以这样写这个帖子,除了人云亦云外,还有高手没说明白,新手看不明白。
我就抛砖引玉了,因为我说还不一定正确。
\r \n所代表的含义是回车和换行,在一些情况下\r \n的效果是一样的,而回车和换行的意思大多数情况下也被认为是一样的,既然这样,何谈区别?
那么我们来了解他们的出处和本质含义。
出处是打印机
\r 含义 回车 英文全称carriage return,简称CR return是回的意思,carriage是车的意思,在打印机中,指(打字机等机器上的)滑动托架,很明显大家见过打印机就知道那个“车”只能左右移动,不能上下移动,那么回车的意思就是一行结束后回到初始位置。可是在电脑上很难描述了,用向左的方向键←移动到行最前端,就是这样效果。
\n 含义换行 英文全称 new line 或者line feed,feed这里是给,加的意思,在打印机中指再添加一行,因为carriage只能左右移动,那换行只能是打印纸来移动,相当于方向键↓的效果。
大家现在明白了吧,现在意义上的回车和换行还有键盘上的Enter其实是\r\n的效果(一下的回车换行均指\r\n的效果)。
可是在使用应该是有回车必有换行的,那么把效果统一起来的也是预料之中的事情,只是表达方式不一样而已,所以才有mac用\r,unix用\n,windows用\r\n
事实在windows记事本里这三种表达方式和用键盘回车键的效果是一样的,大约是windows已经自动转成\r\n了,但是用\n\r(颠倒顺序)\r \n(中间有空格)那么是起到了两次效果,但这不是绝对的,比如在unix看起来回车换行效果正常的文件放到windows记事本里就没有效果 但是会有小黑框,这个文件我用Dreamweaver打开是正常的。
另外据说\n还有含义指一个行的结束。其实和前面说的没区别嘛,这也许是Unix用它代表回车换行的原因。
还有软回车 硬回车的问题,这个在不同平台编软件可能会遇到,前面指\n 后者指\r\n。但我没经验去说是正确与否,但在Word中shift+enter软回车就是回车换行^l,enter硬回车是换段落^p,这个问题在网页设计中也会遇到。
------解决方案--------------------
windows \r\n
linux \n
mac \r
这是操作系统的约定,也可以说是历史遗留问题
知道了就可以,没有必要讨论
------解决方案--------------------
------解决方案--------------------
好帖,实在的做点研究就是好的。
话说win系统下有个一溢出漏洞就是因为此类控制字引起的。
出发代码好像是这样的:
int main( void )
{
for(;{
printf( "hung up\t\t\b\b\b\b\b\b" );
print("hung up\t\t\b\b\b\b\b\b";
}
return 0;
}
忽略了退格前有制表符的情况导致内存越界覆盖。
------解决方案--------------------

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











예, MySQL은 Windows 7에 설치 될 수 있으며 Microsoft는 Windows 7 지원을 중단했지만 MySQL은 여전히 호환됩니다. 그러나 설치 프로세스 중에 다음 지점이 표시되어야합니다. Windows 용 MySQL 설치 프로그램을 다운로드하십시오. MySQL의 적절한 버전 (커뮤니티 또는 기업)을 선택하십시오. 설치 프로세스 중에 적절한 설치 디렉토리 및 문자를 선택하십시오. 루트 사용자 비밀번호를 설정하고 올바르게 유지하십시오. 테스트를 위해 데이터베이스에 연결하십시오. Windows 7의 호환성 및 보안 문제에 주목하고 지원되는 운영 체제로 업그레이드하는 것이 좋습니다.

느린 Photoshop 스타트 업 문제를 해결하려면 다음을 포함한 다중 프론트 접근 방식이 필요합니다. 하드웨어 업그레이드 (메모리, 솔리드 스테이트 드라이브, CPU); 구식 또는 양립 할 수없는 플러그인 제거; 정기적으로 시스템 쓰레기 및 과도한 배경 프로그램 청소; 주의를 기울여 관련없는 프로그램 폐쇄; 시작하는 동안 많은 파일을 열지 않도록합니다.

프론트 엔드 개발에서 Windows와 같은 구현 방법 ...

브라우저에서 JavaScript를 사용하여 닫기 탭과 전체 브라우저를 닫는 방법을 구별하는 방법은 무엇입니까? 브라우저를 매일 사용하는 동안 사용자는 ...

Photoshop에서 수직 가이드를 당기기 : 통치자보기 (보기 & gt; inuler)를 활성화하십시오. 통치자의 수직 가장자리 위로 마우스를 마우스로 덮은 다음 커서는 이중 화살표가있는 수직선이되고 마우스를 잡고 드래그하여 참조 라인을 꺼냅니다. 가이드를 드래그하거나 십자가로 가져 가서 삭제를 클릭하십시오.

MySQL 설치 오류에 대한 솔루션은 다음과 같습니다. 1. MySQL 종속성 라이브러리 요구 사항이 충족되도록 시스템 환경을주의 깊게 확인하십시오. 다른 운영 체제 및 버전 요구 사항이 다릅니다. 2. 오류 메시지를주의 깊게 읽고 프롬프트 (예 : 라이브러리 파일 누락 또는 부족한 권한)에 따라 종속성 설치 또는 Sudo 명령 사용과 같은 해당 조치를 취합니다. 3. 필요한 경우 소스 코드를 설치하고 컴파일 로그를주의 깊게 확인하십시오. 그러나 일정량의 Linux 지식과 경험이 필요합니다. 궁극적으로 문제를 해결하는 핵심은 시스템 환경 및 오류 정보를 신중하게 확인하고 공식 문서를 참조하는 것입니다.

MySQL 설치 실패의 주된 이유는 다음과 같습니다. 1. 권한 문제, 관리자로 실행하거나 Sudo 명령을 사용해야합니다. 2. 종속성이 누락되었으며 관련 개발 패키지를 설치해야합니다. 3. 포트 충돌, 포트 3306을 차지하는 프로그램을 닫거나 구성 파일을 수정해야합니다. 4. 설치 패키지가 손상되어 무결성을 다운로드하여 확인해야합니다. 5. 환경 변수가 잘못 구성되었으며 운영 체제에 따라 환경 변수를 올바르게 구성해야합니다. 이러한 문제를 해결하고 각 단계를 신중하게 확인하여 MySQL을 성공적으로 설치하십시오.

터미널에서 MySQL에 액세스 할 수 없음 : MySQL 서비스가 실행되지 않음; 연결 명령 오류; 불충분 한 권한; 방화벽 블록 연결; MySQL 구성 파일 오류.
