C,C++容易被忽略的问题
1.字符串数组,字符串指针可以直接输出
char s2[]="I am a student";
cout<<s2<<endl;
char *p="I am a student";
cout<<p<<endl;
cout<<p[]<<endl;
2.指针变量p分配4个存储单元。
用指针变量处理字符串,要比用数组处理字符串方便。
指针变量用于存放变量地址,而地址通常为4字节,所以指针变量的长度均为4个字节。
#include<stdio.h> void main()
{
int c=sizeof(char);//
int i=sizeof(int);//
int l=sizeof(long);//
int d=sizeof(double);//
int p=sizeof(int *);//
int q=sizeof(char *);// printf("%d\t%d\n",c,i);
printf("%d\t%d\n",l,d);
printf("%d\t%d\n",p,q);
}
3.static关键字定义静态变量时,相当于只执行第一次。下面程序结果为6
#include<stdio.h>
#include<stdlib.h>
c(int i)
{
static int c=;
c+=i;
printf("%d\n",c);
return c;
} int main()
{
int j,i;
for(i=;i<=;i++)
{
j=c(i);
}
printf("%d\n",j);
}
4.printf()函数从右往左执行
int *p;
int a[]={,,};
p=&a;
printf("%d\t%d",*p,*p++);//12 3
5.循环次数不确定时如何设计?
for (;*p2++=*p1++;); //用指针拷贝字符串
【例7.10】用指针实现字符串拷贝。执行后输出:
s1= I am a student
s2= I am a student
#include<iostream>
#include<string.h>
using namespace std;
int main(void)
{
char *p1="I am a student";
char s1[],s2[];
strcpy(s1,p1); //用命令拷贝字符串
char *p2=s2; //将数组s2首地址赋p2
for (;*p2++=*p1++;); //用指针拷贝字符串
cout<<"s1="<<s1<<endl;
cout<<"s2="<<s2;
}
#include<iostream>
#include<string.h>
using namespace std;
int main(void)
{
char *p1="I am a student";//
char s1[],s2[];
strcpy(s1,p1); //用命令拷贝字符串
char *p2=s2; //将数组s2首地址赋p2
int i=;
for (;*p1++;i++)cout<<i<<endl; //用指针拷贝字符串
cout<<"s1="<<s1<<endl;
}
while(*p1!='\n'){...}
6.strlen()求字符串长度
#include<stdio.h>
#include<string.h>//包含该头文件
int main()
{
char *p="abcbc";
int a=strlen(p);
printf("%d",a);//
}
-------------------
to be continued…
C,C++容易被忽略的问题的更多相关文章
- java https单向认证(忽略认证)并支持http基本认证
https单向认证(忽略认证)并支持http基本认证, 温馨提示 1,jar包要导入对 2,有匿名类编译要注意 3,欢迎提问,拿走不谢!背景知识 Https访问的相关知识中,主要分为单向验证和双向验证 ...
- Sqlserver中一直在用又经常被忽略的知识点一
已经有快2个月没有更新博客了,实在是因为最近发生了太多的事情,辞了工作,在湘雅医院待了一个多月,然后又新换了工作...... 在平时的工作中,Sqlserver中许多知识点是经常用到的,但是有时候我们 ...
- 被我们忽略的HttpSession线程安全问题
1. 背景 最近在读<Java concurrency in practice>(Java并发实战),其中1.4节提到了Java web的线程安全问题时有如下一段话: Servlets a ...
- 神奇的BFC以及被忽略的东西
BFC是CSS中一个非常重要的概念,经常用来清除浮动以及处理外边距折叠,但BFC到底是个什么东西却很难准确的表达清楚,国内的相关技术文档基本都不全面,本文的目的就是对BFC的方方面面做个整理,当然未必 ...
- jq.validate隐藏元素忽略验证
jq.validate隐藏元素忽略验证 现在有这样一个需求,当触发某类事件时候,需要在页面中显示input框,但是当不需要加载页面中的元素时候,进行隐藏.在这个需求的前提下,程序中对于input中的输 ...
- Git忽略.gitignore规则不生效的解决办法
在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件). 这个文件每一行保存了一个匹配的规则例如: # 此为 ...
- Intellij Idea/Webstorm/Phpstorm 版本控制忽略文件
本地差异化配置,不需要提交,这时候需要在整个版本控制中忽略掉文件的提交. File -> Settings -> Version Control -> Ignored Files
- sql注入时易被忽略的语法技巧以及二次注入
那些容易被忽略.容易被弄错的地方 sql注入时的技巧 ========================================================================= ...
- 让Git忽略所有obj和bin目录的同步
DotNet的项目里,编译出来的二进制文件默认都是放在每个项目对应的bin和obj目录下,有时候开发人员会不小心把这些目录的文件错误的提交到Git服务器.Git里的忽略文件功能可以通过一个.gitig ...
- Smart3D系列教程2之 《为什么三维重建效果这么差?——探探那些被忽略的拍照要求和技巧》
一.照片采集的实用概念 根据照片进行三维重建的过程中,有人没怎么遇到坑,有人被坑的不轻.可能是模型的纹理失真,模型的法线错了,模型会生成我们各种也想不到的结果,那么,是什么导致三维重建效果这么差的?是 ...
随机推荐
- 如何让 Drupal 使用 Wordpress 形式的编辑代码?
如果你曾有过将 Wordpress 网站迁移到 Drupal 的经验,很可能客户会问的第一件事就是如何为 Drupal 添加编辑代码. Wordpress 中的 Shortcodes 插件让使用者可以 ...
- 【PL/SQL练习】游标cursor :oracle 在执行sql语句时,为sql语句所分配的一个私有的内存区域
隐式游标:一次只能返回一行结果(不需要定义,默认自动建立) 显式游标: 需要开发人员提前定义,可以通过循环的方式处理游标里的sql语句,返回多行结果 隐式游标的属性: sql%rowcou ...
- 通过fileupload上传文件超出大小
配置文件 . web.config中添加如下内容: <configuration> <system.web> <httpRuntime maxRequestLength= ...
- prototype原型模式中的问题
对于每个构造函数来说,都有一个prototype属性.对于每个对象实例来说,都有_proto_属性. 参看下面代码: function Person(){} Person.prototype={ na ...
- UITableView 详解 ()
(原本取至D了个L微信公众号) UITableView 详解 一.建立 UITableView DataTable = [[UITableView alloc] initWithFrame:CGRec ...
- Spring 注解实体类中非数据库字段属性
解决办法:在属性的get方法上加上一段注解标识它是临时属性,不是数据库字段就OK @Transient public List<Reverts> getChildList() { retu ...
- 详解H264视频格式-2016.01.28
专业名词解释 VCL(Video Coding Layer)视频编码层 NAL(Network Abstraction Layer)网络提取层 SPS(Sequence Parameter Set) ...
- linux程序调试常用命令
1 调用跟踪 跟踪系统调用 strace ls –l 跟踪库调用 ltrace 2 lsof(list open file) 查看程序命令打开了哪些文件 lsof –p PID; lsof –c ...
- 分区的4k对齐
4k对齐的原理 4k对齐的磁盘性能比非对齐的大致提升在5%-10%左右. fdisk -H 224 -S 56 /dev/sdx #创建分区 fdisk -lu /dev/sdx #验证对齐
- sql server命名规范
命名规范 表 表名如Order/UserAccout 符合以下规范: 1. 统一采用单数形式,反对Orders 2. 首字母大写,多个单词的话,单词首字母大写,反对order/User ...