在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1.字符串指针 char *变量名="字符串内容"; char ch='b'; char *p1=&ch; char *str="C Language";//表示s指向字符串的首地址 str="ssssssss";//字符串存在常量区,可以修改s指向的内容 *(str+2)='X';//可以*(str+2)这样访问,但是不能修改。常量区保存的内容都是只读的 常见误区: char *str2=NULL; printf("%s",str2);//这样写是错误的,str2没有分配内存空间去存储变量 解决办法: char *str2=NULL; str2=malloc(100); printf("%s",str2); 或者: char ch3[100]; char *str2=ch3; printf("%s",str2); 2.二维字符数组 char ch2[3][10]={"abc","def","kkk"}; 3.char类型的指针数组和字符数组的区别 char *name[3]={"abc","def","kkk"};//一维指针数组,每个元素存储字符串首地址 #include <stdio.h>
int main(int argc, const char * argv[]) {
char *name[3]={"abc","def","kkk"};
for(int i=0;i<3;i++){
printf("%s\n",*(name+i));//name[i]
}
return 0;
}
1)字符串指针char *ss="abc";指向可以改变ss="ssssss"; 2)字符数组char s1[]="abc"; s1是一个常量,不能被赋值,s1="Helll";是错误的, 4.字符串排序 //
// main.c
// 字符串排序
//
// Created by fanyafang on 15/11/4.
// Copyright © 2015年 itcast. All rights reserved.
//
#include <stdio.h>
#include <string.h>
void sortString(char *arr[],int length){
char *temp="";
//选择排序
for(int i=0;i<length;i++){
for(int j=i+1;j<length;j++){
if(strcmp(arr[i], arr[j])>0){
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
}
int main(int argc, const char * argv[]) {
char *arr[]={"China","America","Flash","Toop"};
for(int i=0;i<4;i++){
printf("%s\n",arr[i]);
}
printf("\n");
sortString(arr,4);
for(int i=0;i<4;i++){
printf("%s\n",arr[i]);
}
return 0;
}
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论