//指針方法完成字符串的復制 #include<stdio.h> void main() { void copy_string(char *from,char *to); char *fro,*t; char a[]="I am a teacher."; char b[]="You are a student."; printf("a=%s\nb=%s\n",a,b); fro=a;t=b; printf("\ncopy string a to string b:\n"); copy_string(fro,t);//此處不用帶指針符號* printf("string a=%s\nstring b=%s\n",a,b); } void copy_string(char *from,char *to) { // int i=0; while(*from!='\0') { *to=*from; from++;to++; } *to='\0';//字符串的最后一個字符為\0 }
指針做形參和實參,完成字符串的復制。
剛開始運行兩三遍,到后面突然出現這個問題,ld.exe||cannot open output file H:\學習心得\我的C語言進化史\copy_string.exe,百度之后,
“可能這個012.exe已經在運行狀態,需要關閉才能編譯”。明白是程序仍在后台運行,不能再次編譯運行,感覺是程序哪里沒寫好,才發現沒有定義main函數的類型,
所以可能電腦不知道返回值是什么,一直在運行。
解決方法:打開windows控制台cmd,殺死進程,taskkill -IM 012.exe /F, 把占用該文件的進程強制殺掉,就可以編譯。
那指針這塊現在就訓練結束啦。