指针好奇怪
来源:互联网 发布:java编写apk 编辑:程序博客网 时间:2024/05/16 07:26
#include <stdio.h>#include <stdlib.h> int main(void){ char *ptr = "Linux"; char c = 'T'; *ptr = c; printf("\n [%s] \n", ptr); system("pause"); //return 0;}
这样写是错误的,当改成char ptr[] = "Linux";时,输出的结果是正确的。
常量字符串存在静态区域,ptr指针指向的东西不可更改,prt[0] = 'c' 正在试图更改只读内存的值
下图中的做法也是错误的:
#include <iostream>using namespace std;#include <cstdio>#include <cstdlib>void replace(char* s,char *t){ for(int i = 0;s[i] && t[i];i++) s[i] = t[i]; printf("%s\n",s);}int main(){ //char s[10],t[10]; //scanf("%s%s",s,t); // replace(s,t); replace("aba","abc"); system("pause");}<span style="color:#ff0000;"></span>
改造如下:
下面的程序是正确的
#include <iostream>using namespace std;#include <cstdio>#include <cstdlib>void replace(char* s,char *t){ for(int i = 0;s[i] && t[i];i++) s[i] = t[i]; printf("%s\n",s);}int main(){ char s[10],t[10]; scanf("%s%s",s,t); replace(s,t); //replace("aba","abc"); system("pause");}
0 0
- 指针好奇怪
- 好奇怪....
- 好奇怪
- 好奇怪的现象
- 奇怪的 this 指针
- 今天好奇怪……
- 一个好奇怪的问题
- 好奇怪的新一届版主
- 奇怪的 this 指针 (续)
- 函数指针奇怪的地方
- Codeforces Round#123 D好奇怪- -|||
- 这代码长得好奇怪
- python 的 remove 和 pop 好奇怪
- 好奇怪的模型和表结构
- td firstChild 只要换行就出不来,好奇怪
- 洛谷 P1747 好奇怪的游戏
- 解释奇怪的指针转换问题
- 一道“奇怪”的c指针问题
- Python运算符优先级
- 数据结构之优先级队列、堆及堆排序
- 动态规划解最长公共子序列问题
- linux下svn命令大全
- 静说两会③ 细说两会的“瘦”与“胖”
- 指针好奇怪
- java 中hashcode 与 equals的关系
- 九度:1003<A+B>
- Yii CActiveRecord 逻辑删除封装
- 字符串模板
- 九度:1006<ZOJ问题><规则,规律>
- SurfaceView
- js关于字面量与构造函数创建对象的几点理解
- Linux下VIM设置