当前位置: 首页 > news >正文

湛江专业建站公司网络营销课程设计总结

湛江专业建站公司,网络营销课程设计总结,海外商城网站建设,惠州私人做网站联系人字符串常量,char数组,char指针之间的差异 1、字符串常量: 位于一对双括号中的任何字符。双引号里的字符加上编译器自动提供的结束标志\0字符,作为一个字符串存储在内存中。 例如: printf("%s","hello"); /…

字符串常量,char数组,char指针之间的差异

1、字符串常量:

        位于一对双括号中的任何字符。双引号里的字符加上编译器自动提供的结束标志\0字符,作为一个字符串存储在内存中。

例如:

printf("%s","hello"); //"hello"
char m = 'h'; //只能赋值一个字母,并且用单引号‘’。

如果字符串文字中间没有间隔或间隔的是空格符,ANSI C 会将其串联起来

例如:

char greeting[50] = "hello,and" "how are" "you";

等价于:

char greeting[50] = "hello,and how are you";

        字符串常量属于静态存储类。静态存储是指如果在一个函数中使用字符串常量,即使是多次调用了这个函数,该字符串在程序的整个运行过程中只存储一份。

2、字符串数组及其初始化:

初始化

例如: 

 char m[40] = "hello,world"; //定义字符串数组时必须指定数组大小(整型常量)

在指定大小时,要确保数组的大小比预定的大一个,因为编译器会自动添加'\0'。多余的元素会初始化为'\0'。

3、利用char指针定义字符串:

char *m = "hello,world"; //自动添加'\0'

4、数组和指针区别:

数组形式:

char m[40] = "hello,world"; 

指针形式:

 char *m = "hello,world";

数组形式:

        编译器会把数组名m看作是数组首元素的地址&m[0]的同义词,m是个地址常量。可以用m+1来识数组里的下一个元素,但不能使用++m,增量运算符只能在变量前使用, 而不能在常量前使用。

例如:

char m[40] = "hello,world";
cout << m; //输出: hello,world
cout <<m+1; // 输出: ello,world

        m[40]在计算机内存中被分配一个有40个元素的数组(其中每个元素对应一个字符,还有一个附加的元素对应结束的空字符'\0')。每个元素都被初始化为相应的字符。 

指针形式:

        指针形式(*m)也会在静态存储区为字符串预留空间。此外,一旦程序开始执行,还要为指针变量m另外预留一个存储位置,以在该指针变量中能够存储字符串的地址。m指向字符串的第一个字符,可用++m指向第二个字符。 指针m是个变量。 注意:字符串指针*m指向字符串常量,不能用*(m+1)='o'修改此常量,但是数组可以采用*(m+1)='o'修改此字符串,因为这个字符串常量放在常量区不能被修改。

例如:

char *m = "hello,world";
cout << m; //输出: hello,world
cout << ++m; //输出: ello,world

数组与指针差异:

例子:

char str1[] = "hello world!";
char str2[] = "hello world!";
char *str3 = "hello world!";
char *str4 = "hello world!";if (str1==str2) //str1/str2:代表的字符串的首地址,两者字符串首地址不同printf("str1 and str2 are same.\n");
elseprintf("str1 and str2 are not same.\n");if (str3==str4) //str3/str4:代表的常字符串的首地址,两者的地址相同,同指向常字符串的首地址printf("str3 and str4 are same.\n");
elseprintf("str3 and str4 are not same.\n");

结果:

str1 and str2 are not same.
str3 and str4 are same.

注意事项:

        str1/str3: 代表字符串的首地址, 它等价于&str1[0]/&str3[0];

        *str1/*str3: 代表字符串的首字母,它等价于str[0]/str[3];

单引号('')与双引号("")的区别:

        单引号是用来定义单个字符;

        双引号是用来定义字符串;

http://www.yayakq.cn/news/186967/

相关文章:

  • 东至网站制作台州网站制作开发
  • 网站开发包括什么软件typecho2wordpress
  • 莱芜民生网站个人做电商怎么入门
  • 卖游戏辅助的网站怎么建设建一个网站迈年
  • 上海有哪些优化网站推广公司镇江还有什么网站吗
  • 门户网站和微网站的区别广告片
  • 微网站建设高端网站定制0511梦溪论坛
  • 昆明网站建设公司乐网wordpress社交分享非插件
  • 网站域名泰安网络科技有限公司电话
  • 温州网上推广什么网站好网站的flash
  • 关于音乐的个人网站电子商务网站建设怎么做
  • 网站的功能设计公司内账管理系统
  • 为了找工作做的前端网站注册劳务公司流程和费用
  • 网络推广网络营销和网站推广的区别简易app开发软件
  • 德清县建设局网站织梦多语言网站
  • 响应式网站方案seo在线论坛
  • wordpress整站密码品牌设计的要求有哪些
  • 网站建设学习流程做设计赚钱的网站
  • 山东住房和城乡建设厅网站一体化平台网页设计旅游网站前言
  • 网站开发工程师证书邯郸网站建设 安联网络公司
  • 浏阳商务局网站溪江农贸市场建设网页制作软件分为两类
  • 网络优化工程师主要做什么南宁seo教程
  • 怎么让百度收录网站网站屏蔽ip地址
  • 网站要流量有什么用做外贸的网站哪些是最好的
  • 做炫光素材的网站大型网站开发语言
  • 帝国网站怎么仿站网络推广的基本方法
  • 佛山网站定制wordpress仿微信订阅主题
  • 莆田网站建设费用为什么无法卸载wordpress
  • 网站浏览图片怎么做的网站建设站长相关专业
  • 丽水市莲都区建设局网站企业馆