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

云服务器做网站一般配置seo快速推广

云服务器做网站一般配置,seo快速推广,新泰程序开发,个人网站注册步骤图解1. 定义方式 (1) 指针赋值字符串 char *str "Hello, World!";含义: str 是一个指向常量字符串的指针。字符串 "Hello, World!" 被存储在只读的静态存储区(通常是程序的常量区),str 指向该字符串的首地址。…

1. 定义方式

(1) 指针赋值字符串
char *str = "Hello, World!";
  • 含义
    • str 是一个指向常量字符串的指针。
    • 字符串 "Hello, World!" 被存储在只读的静态存储区(通常是程序的常量区),str 指向该字符串的首地址。
(2) 数组赋值字符串
char str[] = "Hello, World!";
  • 含义
    • str 是一个字符数组,大小为字符串长度加1(包括末尾的 \0 空字符)。
    • 字符串 "Hello, World!" 被复制到数组中,存储在栈或全局/静态存储区(取决于定义位置)。

2. 内存分配

(1) 指针赋值字符串
  • 存储位置:字符串存储在只读的静态存储区。
  • 内存布局
    • 指针变量 str 存储在栈上(如果是在函数内部定义)。
    • 字符串 "Hello, World!" 存储在只读区域,str 指向该区域。
  • 示意图
    +-------+       +-------------------------+
    |  str  | ----> | "Hello, World!\0"       |
    +-------+       +-------------------------+
    (栈)             (只读静态存储区)
    
(2) 数组赋值字符串
  • 存储位置:字符串存储在数组中,数组可以位于栈、全局/静态存储区。
  • 内存布局
    • 如果数组定义在函数内部,则数组存储在栈上。
    • 如果数组定义在全局或静态作用域,则数组存储在全局/静态存储区。
  • 示意图
    +-------------------------+
    | "Hello, World!\0"       |
    +-------------------------+
    (栈或全局/静态存储区)
    

3. 可修改性

(1) 指针赋值字符串
  • 不可修改
    • 字符串存储在只读区域,尝试修改会引发未定义行为(如运行时错误)。
    char *str = "Hello, World!";
    str[0] = 'h'; // 错误:试图修改只读区域的内容
    
  • 用途
    • 适用于不需要修改字符串内容的场景,例如字符串常量或只读数据。
(2) 数组赋值字符串
  • 可修改
    • 数组中的字符串存储在可写区域,可以自由修改。
    char str[] = "Hello, World!";
    str[0] = 'h'; // 正确:修改数组中的内容
    printf("%s\n", str); // 输出 "hello, World!"
    
  • 用途
    • 适用于需要修改字符串内容的场景。

4. 大小和灵活性

(1) 指针赋值字符串
  • 大小
    • 指针变量本身占用固定大小(通常为4字节或8字节,取决于系统架构)。
    • 字符串的实际大小与指针无关,存储在只读区域。
  • 灵活性
    • 指针可以重新指向其他字符串。
    char *str = "Hello";
    str = "World"; // 指针重新指向新字符串
    
(2) 数组赋值字符串
  • 大小
    • 数组的大小由字符串长度决定,包括末尾的 \0
    • 数组大小在定义时固定,无法动态调整。
    char str[] = "Hello";
    // 数组大小为6(5个字符 + 1个'\0')
    
  • 灵活性
    • 数组无法重新指向其他字符串,但可以通过拷贝等方式更新内容。
    char str[20] = "Hello";
    strcpy(str, "World"); // 更新数组内容
    

5. 使用场景

(1) 指针赋值字符串
  • 适用于:
    • 不需要修改字符串内容的场景。
    • 需要节省内存(只存储指针,不重复存储字符串)。
    • 字符串常量(如错误信息、提示信息等)。
(2) 数组赋值字符串
  • 适用于:
    • 需要修改字符串内容的场景。
    • 字符串长度较短且固定的场景。
    • 需要将字符串作为局部变量使用的场景。

6. 示例对比

代码
#include <stdio.h>void test_pointer() {char *str = "Hello, World!";printf("Pointer: %s\n", str);// str[0] = 'h'; // 错误:试图修改只读区域
}void test_array() {char str[] = "Hello, World!";printf("Array before modification: %s\n", str);str[0] = 'h'; // 正确:修改数组内容printf("Array after modification: %s\n", str);
}int main() {test_pointer();test_array();return 0;
}
输出
Pointer: Hello, World!
Array before modification: Hello, World!
Array after modification: hello, World!

7. 总结

特性指针赋值字符串数组赋值字符串
存储位置字符串存储在只读静态存储区字符串存储在栈或全局/静态存储区
可修改性不可修改可修改
大小指针大小固定数组大小由字符串长度决定
适用场景不需要修改字符串内容的场景需要修改字符串内容的场景
http://www.dtcms.com/wzjs/131714.html

相关文章:

  • 网站怎么做友链seo客服
  • 兰州西固区公司网站建设应用商店app下载
  • 网站如何做渗透测试优化关键词的方法
  • 如何做网站搜索优化网络营销推广论文
  • 搜狐最大的门户网站适合seo的建站系统
  • 镜像网站怎么做长沙专业网站制作
  • wordpress店招部分如何设置百度seo排名优化提高流量
  • 网站开发java好还是php好交换友情链接前后必须要注意的几点
  • 帮别人做非法网站千锋教育的it培训怎么样
  • 网站开发工程师任职要求百度一下就知道百度首页
  • 一级a做爰片完整网站环球资源网官方网站
  • 做农业需关注什么网站店铺推广引流的方法
  • 如何建立一个个人网站做网站推广一般多少钱
  • 企业网站建设基本原则免费外网加速器
  • 淮南网站建设网络营销策划书5000字
  • 网站中英文域名营销推广有哪些公司
  • 松岗做网站价格班级优化大师下载
  • 招商网站建设方案深圳网络运营推广公司
  • 贺州网站seoseo在线工具
  • 宝鸡市住房和城乡建设局官方网站苏州网站建设
  • 微信微网站开发策划免费浏览外国网站的软件
  • 进销存十大软件唐山seo排名
  • 有在网上找做网站的人么seo营销工具
  • ui网站建设东莞关键词优化推广
  • php做网站有哪些优点怎样制作网页设计
  • 国外便宜的云服务器免费seo营销优化软件下载
  • 济南做网站建设的公司广州谷歌seo公司
  • 最新的网站建设软件外贸网站建设设计方案
  • 网站首页布局设计教程网站策划报告
  • 做赌钱网站手机网站自助建站系统