从品牌网站建设到网络营销策划,从策略到执行的一站式服务
这是因为char* b = "……",中。 b是一个常量,不能对它指向的内存区域赋值。
目前创新互联已为上千多家的企业提供了网站建设、域名、网站空间、网站改版维护、企业网站设计、巍山网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
类似下面的代码:
char* p = "hello";
p[0] = 'c';
是同样的错误。
#include "stdafx.h"
#include stdio.h
#include string.h
void replaceChar(char *string, char oldChar, char newChar){
int len = strlen(string);
int i;
for (i = 0; i len; i++){
if (string[i] == oldChar){
string[i] = newChar;
}
}
}
int main(){
char str[] = "test";
char oldChar = 't';
char newChar = 'w';
replaceChar(str, oldChar, newChar);
printf("%s\n", str);
return 0;
}
A函数的源码可控吗?如果可控,把对B函数的调用改成对新实现的调用就行了。
如果A函数不是自己写的(源码不可控),会麻烦一些。例如,在支持指针的语言上,可以修改B函数入口部分的汇编代码,jmp到自己的新实现。要求B函数和你的实现原型必须完全相同。
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图