当前位置:首页 » 操作系统 » linux字符串数组

linux字符串数组

发布时间: 2022-11-30 02:37:45

‘壹’ linux下字符串截断符是什么

这个和操作系统没有直接联系 和语言编译器有关.
C/C++编译器在Linux通常gcc/g++ 在编译的时候自动会给用“”的字符串加‘\0’
字符串截断符和语言有关.

‘贰’ linux中如何在一个数组中的各个字符串后面统一添加一个字母

shell脚本的一个例子,大概的意思应该不差:

#!/bin/sh

echo /dev/sdb > $$.tmp
echo /dev/sdc >> $$.tmp

aa=`cat $$.tmp`

rm -rf $$.tmp2

for a in $aa
do
b="$a"1
echo $b >> $$.tmp2
done

bb=`cat $$.tmp2`
echo $bb

‘叁’ linux,shell如何把字符串变成数组

echo $url | cut -d , -f 1
cut是切割命令,-d表示分隔符,这里是逗号,-f表示取第几个,这里是第一个
注意和数组不一样,数组是取第0个。

‘肆’ QTsocket的接收问题,用Linux发送数组数据时,QTsocket接收错误

  • 接收函数内,一开始就readAll(),已经把数据都读取了,所以后面就没有可读数据了,所以后面不用判断bytesAvaliables()。

  • 接收的时候,不要直接接收到QString中。应该先读取一个长度值(quint16),再根据长度值去读取QByteArray,再把读取到的QByteArray放到QString中。然后再判断bytesAvaliables是否还有剩余。有剩余,就再接收长度值+QByteArray。。。。

‘伍’ linux里A=“1 2 3”,$A是个数组吗!还是一个字符串!

楼主说的应该是shell中的,$A是字符串。
字符串转数组

str="12 34 56"

arr=($str)

count=${#arr[@]}

for (( i=0;i<count;i=i+1))

do

echo "$i=arr[$i]"

done
http://doudouclever.blog.163.com/blog/static/17511231020127288621354/

‘陆’ linux怎么才能区切字符串然后分别赋值给数组

你好,下面是一个例子。
string="hello,shell,split,test"
array=(${string//,/ })

那个//和/之间是分割的字符。

‘柒’ linux下使用C++如何定义一个每个元素八位一共20个元素的char型数组

char 类型就是8位的,char[20];刚好符合你的要求。

‘捌’ linux脚本,在一个循环中赋值一个数组

数组的赋值操作有问题,改成下面这样:
for ubootfile in $uboot_list
do
FILE=`find . -name $ubootfile -print -quit`
if [ -n "$FILE" ]; then
a=(${a[@]} $FILE)
else
b=(${b[@]} $FILE)
fi
done
echo "found files:"
echo ${a[@]}
echo "missing files:"
echo ${b[@]}

下面是数组操作的讲解,请参考:
数组作为一种特殊的数据结构在任何一种编程语言中都有它的一席之地,当然bashshell也不例外。本文就shell数组来做一个小的总结。
在这里只讨论一维数组的情况,关于多维数组(事实上,你得用一维数组的方法来模拟),不涉及。这里包括数组的复制,计算,删除,替换。

数组的声明:
1)array[key]=value # array[0]=one,array[1]=two
2)declare -a array # array被当作数组名
3)array=(value1 value2 value3 ... )
4)array=([1]=one [2]=two [3]=three ... )
5)array="one two three" # echo ${array[0|@|*]},把array变量当作数组来处理,但数组元素只有字符串本身
数组的访问:
1)${array[key]} # ${array[1]}
数组的删除
1)unsetarray[1] # 删除数组中第一个元素
2)unset array # 删除整个数组
计算数组的长度:
1)${#array}
2)${#array[0]}#同上。 ${#array[*]} 、${#array[@]}。注意同#{array:0}的区别
数组的提取
从尾部开始提取:
array=( [0]=one [1]=two [2]=three [3]=four )
${array[@]:1} # two three four,除掉第一个元素后所有元素,那么${array[@]:0}表示所有元素
${array[@]:0:2} # one two
${array[@]:1:2} # two three

子串删除
[root@localhostdev]# echo ${array[@]:0}
one two three four
[root@localhostdev]# echo ${array[@]#t*e} # 左边开始最短的匹配:"t*e",这将匹配到"thre"
one two e four
[root@localhostdev]# echo ${array[@]##t*e} # 左边开始最长的匹配,这将匹配到"three"
[root@localhostdev]# array=( [0]=one [1]=two [2]=three [3]=four )
[root@localhostdev]# echo ${array[@] %o} # 从字符串的结尾开始最短的匹配
one tw three four
[root@localhostdev]# echo ${array[@] %%o} # 从字符串的结尾开始最长的匹配
one tw three four
子串替换
[root@localhostdev]# array=( [0]=one [1]=two [2]=three [3]=four )
第一个匹配到的,会被删除
[root@localhostdev]# echo ${array[@] /o/m}
mne twm three fmur

所有匹配到的,都会被删除
[root@localhostdev]# echo ${array[@] //o/m}
mne twm three fmur
没有指定替换子串,则删除匹配到的子符
[root@localhostdev]# echo ${array[@] //o/}
ne tw three fur
替换字符串前端子串
[root@localhostdev]# echo ${array[@] /#o/k}
kne two three four
替换字符串后端子串
[root@localhostdev]# echo ${array[@] /%o/k}
one twk three four

‘玖’ linux C 截取字符串放到数组中

在程序当前目录下建一个txt文件bill.txt,文件内录入以下内容:

<pay_flowid>CTC4789</pay_flowid>

<>嗨,网络知道<dd>

<he和>hellolinux

运行程序后在当前目录下生成str.txt文件,可以提取。

程序代码如下:

#include<stdio.h>

#include<string.h>

#include<sys/types.h>

#include<sys/stat.h>

#include<fcntl.h>

#defineLEN100/*字符数,可以根据需要自己定义*/

intmain(void)

{

intfd;

longlen,i,flag,j;

charnum[LEN],string[LEN];

fd=open("bill.txt",O_RDWR);

len=read(fd,num,LEN);/*readstringforbill.txt*/

num[len]='';

close(fd);

for(i=0,j=0;i<len;i++)

{

switch(num[i])

{

case'<':

{

flag=1;

break;

}

case'>':

{

flag=2;

break;

}

default:

{

if(flag==2)

{

string[j]=num[i];

j++;

}

}

}

}

string[j]='';

fd=open("str.txt",O_RDWR|O_CREAT,S_IRUSR|S_IWUSR);

if(fd)

{

write(fd,string,j);

close(fd);

}

return0;

}

热点内容
rest上传文件 发布:2024-05-04 11:03:19 浏览:280
情侣玩游戏解压视频 发布:2024-05-04 11:00:57 浏览:777
c文件夹大小 发布:2024-05-04 10:54:35 浏览:676
回忆源码 发布:2024-05-04 10:28:20 浏览:235
mmm源码 发布:2024-05-04 09:57:29 浏览:262
清除后台缓存的软件 发布:2024-05-04 09:57:22 浏览:833
梦幻西游有什么脚本 发布:2024-05-04 09:33:43 浏览:717
I编程视频 发布:2024-05-04 09:33:31 浏览:378
java客户端程序 发布:2024-05-04 08:08:11 浏览:939
腾讯视频账号和密码哪里看 发布:2024-05-04 08:08:11 浏览:451